w5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zzw5#az{{{z{z||{|||||||z{{{{||z||||~{|z{|{{{z|||||}}||z{{{{{{||}{||}|||{{{zzz||z|{||||{{{|z{|{||{{{}||z{z{{z{z{|{|{|||{z{zzz{||{|{|||{|{{{{z{{||{{}|{||{z{{z{|||{||{|z|{{z{z{||||{|||}{{{{{z{{{|{{||{}zzzz{z{{}{{{}||{{zz{|z{||||||}|{{|{|{|{|{{|||}|{{{{{{|{{|{|||||{{{zz{|{{|{|||}|{{{|}z{{{}{{||||{{{|{|{{|||||||{|{{{|{z{{||{|}||}{{z|{}{|{}}|||{{||{{||||{|{||~||{{|{{|{||{}}}}}|{{|}{|{||{|}}|}|{|||||}||}|}}||||{|{|{|||}|}}|||{|{{{{{||||}{|||{z||{|{{|||||||}|{|}{}|}{{{|}}}|{{z|{{{||}||||}|{z{{{|{{|||z||||||{{{|{||||}|||{{z{{|{z|||||||}|||{|{{{}|||||||||{{{{z{}|}||||||{zz{{{{||{}||{|||{|{zz{|||||{{|{{zz{|{{{{{{{|||{{||{{{{{{{{{|||zz|{z{{{{{||{||||z{{{z{{z|{z{z|{|z{{z{|{||||{|||{|z{z{|z|{|{||{{|zz{{{|z{{{{{||{||z{{{{{{{z|{}{{{z{z{{{{{{{{||||{z{z{{||{|}{{{||{zz|{{{z|{z|{}}||z{{{{{y{{||||}{{{{{|{{z||{|||{{|{{{|zz{||{||{~{}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{|z|{{}z{|{||{{{{{z|{}||||{|||{{|{|{||{|{|||||||{{{{||}|||}}{z||{||{}}}||}|}{{}|||{|||||||}}}{|{|{|{}~||}|}||||z|{||}||}|}}}}{{{|{||}||||||~||{|||{|||}|}}|}||{|||{{{||||}|}|{{|{||||}|}|||{{||||z|{|{|{}|{|||{{|{|{|||{{}{||{}|}|{|{|||||}}z{{{{{|{||{|||~|{{{{{zz{|{z|{{{|{{{{{|{z{{||{{||{{{|{{{{{|{|{{|{{{z{{|{{|{|}{|{{{{|{{{{{{{{|{|||{{y{|z{{{{{{|{||{z|{{{{{{{|z|{}}|||{zz{{{|{{|||{{{{yz{{{|{|{|{{{{{|z|z{{{||{{||{|}{z{{{{{|{|||||{{{{{{z{||||{{{}||||z{|{{||{{|{|z{{|{|{{|{|{|||{|{|||{|{||{{{|||{{|{|{{{}|||z||||{{{|z|{||{}}|{|{|{{{||||||}||}|{{{|{{{{|{{}{||}{{{|{|z{|}|{||}}|{{{||{||}}|}|}||{}{||||{||}||}|~{{}|||||}|}}|}|||}|{|}||}}||}{}}||||{{||||}}}}}||{|{||{|||||}}}|{}|{{||||||}|~}|{z{{{|{||||{|||{{|{{z{{{|{|||||{|{||||{{}}{||}||{|{||{}||}||}}||{{{|{z{|||||||~||{{{|||||||{}||}{|{{{{z{{||}|z{{||{{{{{||||{}|z|||{{z{{{||||||{|{{zzz{{z{{}{{|{z|{{{z{{{||{|||{|z{{{{z{||z{{||{||{|{{z{{|{||{}{{zzz{{{{{{{{{{{|{|{z{{{z{|{{|{{|{{||{{{{{||{{||{{{{{|{{{{||||||}|{|{{zz{z{|{|||}{z|{{z{{{{||||{||{{{|{{{{||||||||||{{{{||{||{|}{{{{{||{{{||{|}{{||{{{|{zz||}||}|{|{{||}|{|{}|||||z|||{|z|{||||||}{|||{{{}}|||||||}||||||}||||}|~}||||{}}|}||}}}~}|||{{||}|}}}{{~}{{|}|||||||}}}~|||||||{}||{}|}}|}|||||{|}||||}}||||{{|{{~{|||}||||{}{{{}||}}{||||{}|{{{|}}|||||{|{{z{{{{}|{}||||{|{{|{{{||{}||{|{{{z{{|{{|}||||{{{|{|{z{{{|{||}{{{z{|{z{||{{z{||{{{|z{z{{{{{|{{{zzz{{z{{z|{{||{{zz{{{z{||{||{{{{z{{y{{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{{{|{{|{|{{zz{zzzz{||{{{{|z{{{z{z{z{{||||||||{{z{z{|{{{{{{{|z{{zz{{{z{{|}{{|{{||{z{|{|{{}{|}{y|{{{{||{{{|}|{{{{{|{{|||{|||{||{|{{|{|||||{}|{{{{z{{z}||{}{|{{{{|{{{{{}{|}||{{{||{{|{}||||||{{}|{{{|z{||||}}{||||{|{|||||}}}}{{{{{|||}||}{}}|{||}|{{|||{|||||{{{|||}|||}|}}}}z||||||}|}|}||}||{{|||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||||}|}|{|{{{|{|}}||||||||{|{||}||}|}||}|{{|{{{|||{||}||{|||{{{{{||{||}|{|{z{|{||}{{|}|{{{{|{{{{|{|{}||z|{{{|{{||||{||{||{{z{{z{z|{{|{|{zz{|{z{|{{{|{|||zz{{{{{{{}{|{|{z||{{|{{{{||{|||{z{{{{{{|z{|{|{||{z|{{z{{|{{{||{zz{{{{zz{||{|||||{zz{{{||||{||{||z{{{{|{||{{||||{|||{z||}|}{|{||{||{{{{{{{||{}{|{{{z{{z{{||||{}||z{{{{{{|{|{|||||{|||{{{|}|}||||||{||||{}|}|||{}|{|||{|{{|||}|}{{|{|||{|}|~{|}}}||||||||}|{|{}}|}||{|{}|{|}||}}}~}}|z{|{}|}||}}|||{}}||{|||||||~||{||{|{}|}}|}|}||{{||}||}{||}~|||{{{{|{|{}}}|}}|{|{{z{|||||}|}}{|{||{{{||}|{||}|||||{}||{{|}|}|}||zz{y{||{{|||||{|zz{{{{||{{{|{|{{{{{{{{{||{{||{|{{{|{zz{|||||{}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{|{|||||||{||{}{{z{{{{z{|{|}|{{z{|{{|{{}{{{||{{||z{{{{{|{}||{{{{{|{{{{|{||{{||{{{zz{{{|||{{||{{z{{z{{{{||{|{|{{{|{{{{{z||{{{||{{z|{{{{{{{|{|||{{{z{z{{{{{|{{|{{{|{{{{z{|{|||}|{{{{{{||||}||}|}{{{{{{{||||{|}||{||{{z{z{|}|||}}{{{z{{{{{}|{}||||{|||{{|||||||~}|{|||z|||||}}|{|{|{{||{||{|~}}||{|{{||{||||||||}|||}||{|||}|||~|}{|{|{|{||||{|}||{|}{|}||}||}|}}|||{|}|}|~}}|~}}||}|{|{|}}~|||}}||{|{{||}{}|}}}}}|{}}|||}|||}}}}{{|{|}{{{}|}{|}|||||{{{}}}|}|{{||{|{|{|{||}|||||{}{{}}{|{}|{}||}|{{{|{{{{{|{||~{|{|z|{{{{|||||}|{||z|{z{||||{|||{{{{y|z{|{{|||||{{|z|{|z|}}{{|||{{{{{{zz{{|z|}{{{y{{||zz||z{{|||{{{{{z{z{{{{{{|{{{{{zz{{{{|||||{z{{{{z{z|{|{{||||{{{zzzz{{{{|{{{||z{{z{{{|||z||||z|z{|{z}}{{|z{{|{z{{{{{{|||{{||{{||z{}{||||||||{z|z|z|{}}{|z|{|{z{{|yz{{{||||||{{|{{{{{{|{|{|}|{z|{{{{z{{{|z{{||{{{{{|{{}|||}|}{|||||{||{||{|||{|||{{|{|}}|{}}{{{z{{|{{|}}{}||||||{{||||||||}||}|{{{|{||~{|}~}||{|||{|{|||~}|}}||{{|||||}||}|}}||||||{||}z}|||}{|{z|{{{||{{||}|||{{z||{|{}|{{|}||}{{{{|||z}zz|}|{|}{{|||}||}||||||||{z{|||{}|}|{{{{{|{||||}|}|{{{|{{{{|{|||{|}}|{|{{z{z|||}||}|{z{{{{{z{|{{{||z{{{{{z{{{{|z|{||{z{zz{{||{{{||||z{{{zyz{||z{{|}{{{{{{{zz{{{{||||{{{z{zzz{{{|{|{||{{{{{{{{{|{z||||{|z{z{{{{{{||{{{z{{{{{z|{{|{{}{{z{{z{{z{||{||{|{|{|{z{{|{{{{{|}{{{z{{{|{|{|||{}{z|{|{{{||||{||{{{{z|z|{||}{|||{|{{{|{|{||||{||{|{|||{{|{||}}{|}{||{|}{{|}||||}|{|{{|{{{{||||}}||{{{{{{||||{{||{{{{|{}{|||}|}}}|}|||}|||}|}~|}|}}{|||||{|}||||~||||{{|||}}|||}|}}||{}|{||}|}}}|||{{|||{{{||||}||||z|||{{||||||}|||z|{{{{{|||{}}}|{{||{{{}}|}|}|}|{||}|||}{||}{|}{||{{{{{|}z{|{}}|{{{{{{{{{||||{||{zz{{{{{{{{{|{||{|||z{y{|{{{|}|{{{z{{{z{|{{||{{{{|yz{z{z{{{{|{{z{{{z{|z{{|{|{{y{{zz|{zz{||{|{|{z{{zzz{zz{|{||}{zz{{{{zz|{{|{z{|{{zzzz{z{{{|{|{{{z{||zzz{|{{z|||z{z||{{{|{|{|{||z{{|{z{{{{{{||{}{{{{{{||{|{{||{{{{z|{z{y{{{|}||{{|{zz{{z||||||}|{{|{|{|{||{{{}|{|{|{|{|{{}|}|}|||{||||||{|{}|}~}{{}{{{{|||}||||{}{{{{z|{|}|||}||{|{||}|}}||||}||}{||{||{|}|||}|||}}{}|{{{||}}|}|}|{{|||||}{|}||}|{||{{{|}|||{|||{||{{{||{|}|||}|||z{{{z{}}{}{|}{{{|{{z{|{{|{|{}~|||{{{{}||}{}}}}|{{{|{|{||{}}}}}||{{{{|{|||{{|}||||}{z{{{|||{||}{||{|{{{|{||||||z{||zz{y{|{{|||||{{{{z|z{{{zz|||{{{{z{zz{|{{z{{{{{{zz{z{|{{|{{{{zz{{z{yz{|{|{||{z{{{zz{y{{{|||{|{z{{z{z{{{{{|}|{{|{z{{{{{|{|||{|{{|{{{{{|}{{{||||{{z{{{|{||{{|||{{zz{{{{{|{|||||{{{{{{|{{{|||||||z|{{{|{z|||{||{{|}{|{{{{|}{{{||{|{}{{{|||{|||{|||{|{{{|{{|||{}|{z|{|{{{|||}|}|||{|{}z||{}|}}||||||||||{||}||}|}||||{{|||}{}|}|}|{|||}||}}||}|}}||||{|{{|||{{||}||{{{|{}|}}|||~~|||}||{||}{|}{}||{z|{{||{}||{||{|{||{{{{|||{|||||{{||{|{|{||{~}{|}|||||}{}||}}}~{|{|{||{||||}}||{|{||{{|||}||||{|{z{{{{{|{||{||||{|{{z|z{||{|||~z{|{{{|{{||{||||{{{{y{{{|{||z{|{{{{z{{{z|{|{{||{{z{zz{{z{||{{{||{{{||{z{{z|{{{|{{z{{{|z{z|{z|{{{{z{||zz{|{z{{||{|z{z{{{z{|z{{|||||zz{{z|{{||{|||{{{{zzzz{|{||{|||z{{z{{z{{|{||{|{{{{{{|z{{|||}}|{|zz{{{{{|||||{|{z|zzz{{}{{|{{|{{{{|{{{|{||||{||{{{|{{{{}{|||}}}{{{{{{||{||}||{{{z{|{{{{||}|{|}||{{{zz{|||{|}}}|{||}||||||||}}||}|||{||||||||}}||||||{|{}{}||}|||{|||z{{||||}|}}|{|{||{z||||}}~}{|{{{|{}{|}||{|}||{{|{{}||||||{{z{{{{{|z|{||{|}}|||{}}}|}~}~}}|}|||}||{{}|||}|~}{z{{{|{{}||||||}|z{{|z{{{|||||}||{|{{{{z|{|{{}{}{{y{|{|y{}|||||{{z|{z{{{||{|||||{{{{z{{{{}{|{|{|{{{{zz{{{|||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|zz{z{{{{{{||{{|{zzyz{{z|||{|{{{{{{{{{{{{{}||||{{{{|z{{zz{{{{|{{{{{{{{z{|{{{|}{{z{{{{{{{{|{|||{{|z{{{{{|||{{|}}zz{{{{{{{|{|{{||z{|{z{|{{|{||{}|{{{{{{|{z|||||{||z{z{{{{||||||||{{{||{{{||}||{|{{{{{|||{||{}}}|}{|{{||{z{|||{|}|{|||{{z{|||||||{|{{z{{{{|}z|||}{{{|{{{{||}|||}}}|{{{{||||}}||||}||{|{|{{|}}||||}|{||{z{||}{||||}{{{|||{||{||}}}||{{z{||{||{|}|}|{{z||{{{|||||}|{{||{{{|{|||{|}}}}||||||{}|}}|||}}|{{|z{||{||||}}|{{{{{{{|{|||{||||{|zz{{z{|{{|{{|{{zz{zz{{{|||{|{{|{|{{z{|{{z{|||zzz{zz{|||{{||||{z{{{{z{|{{z{{{|{z{zz{yz|{{{|{|zz{{zz{{|{||{{}z}{{{z{{z{{{{{{|{{z{{{{|{|z{z|{{|{zz{{zzz{{||{{||{z{zz{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{{||||||||{{{zzz{}||}|}|{{}{{{{{||{||}{|{{|{{{{|{||||||{|{{z|{||{|}{||}}z{z{{{{|{||||{}||z{{}{{{{{{|||||{|{{{z{{|||}|||||{{|{|{|{|||||}}|||{{z|{||}{}||||||||{|{|}}|||}}|||{{{|}||}}|}}}|{|}|||||}|}}|}~}||}||{||||}}||}}{||||{||{}||}}}{||}|}|||}|}|}|}|{|{|{||||||||}||{{{}{|{{|||||||||{{{{{{|z|||~}}}}{}|||{|}}|~}}|||||{||z}|||}}}}||{|{|{|||||}}||{{{{{{{|{{||{{|{|{{|z{{y{z||{||}|{|z|{{{{{}{{{{{{{||{z{z||||z|{{z{{{z{{{{|{{||z{||{|{z{y{||{{{|}z{|{z{{zz||{|{||{{|{zy{{|{}{{||{|{{{{{{zz{{{{{||{{{|{{z{{{{||||{||{z{{zzz||{{{|{|{z{|z{{{||}|}{}{{z{{{{z|{|{{|{}|{|{{{{{{|{|{|||{||||z||{|||}||}{{{y{|{|{}|{{||{|{z{{|{{|}{|{||{{{||zz{{}||}}}|||||||{|{|||}|}~|{{{{{{{{|||||}|{|{{|{{{{{{}|||||{z|{||}{{|||}}|}}||{|||||}|}||}||||||{{{||}|}||||z|{{||||}|}}}}|||{|}}{|||{|||}|}{{{|||{|}|{|||||||z|{{|||{||}|{{{|{{{{{|{{||}|~||{|}|{~|}}}}~}{||{{z|{|}|||}}~||{|{{|{||}|}}|||||{|{zz{}|||||||zzz|{|z{|{}{||{{{{{||z{z{|{|{|{|{z{zzz{|{|z{|{z{{{z{z{zz{{{{|{|z{{|{z{{{||{|{||z{zzz{zz{{{{|||{zz|{{z{{{|{{|{|{{{{{{{zzz{{{{|{|z{z{{z{z||z|{}||{zzzzz{z{{{{||||{{{zz{{z||{|{|{}{{{{{{|||{{{{|}|z|{{z{z{||||||||{{|{|{z{{|||{}{|{|}{{{{|||||{|||||{|{{|||}|{{|}{|}{{{{z|{||}}|{{|{}|{|||||{}||}|{z|{{{{{||}{|||{|zz{|{|{{}|}||}{|{}|{|||{||||||~}||{{{{}||{~|~}}}}||}|{z}}{|}||||{|||{|||}}|{||}{|{||{{{|{{|||}|{||{{{{{|}||{||||{|{{|{{|}|||||||{{{{{|{|{|{}}}~}}}||}|||}}~}}}}||||}{}||||}}}}||{{|{|z|}}||}|||{{{||z{{{|{{{|{||{z{|{{{{{||||}z|{{{z{{{{|{{||zzz{z|zz||{|{{|}||z{{zzzz{{{{|{||{{|z{z{{|{{{|||z{{{{z{zz||{||{{z{{|zzz{{{{|{{|{{|{{{{z{{|{|{{{|{{{|z{|{{}{{z{{||{z{{{{{{|{{{{|}||z|zz{zz|{||||{|{|z{{z{{|{{{|{||z{{z{{{{{|{|{|{|{{{{{{z|{||||}{{|{{{z{{{|{{}||}|{|{{{{{|||{|||||{|z{{|{{|||}||{}{|{|||}|||||||}|}|{{{{{{}||||}|||z|{{||{|}}|{}||}||{|{|{||||{}|}|||{||{|||}|}}}||{|{|{|{|||}||~|}{|||{{}|}}}|||}}{{||{|||||}|}|}{{||{||{|}|}||}}||{||{{{||{||}}}{{{{{|{{{|{{|}}~}|||{|}}}}|}||~}||z|||||{|}|}|}~{|{{||{{{||{}|||{||{{{||{{}||||{{{{{{zz{|{|||||{|{y{{zzz|{{||||{{{zz{zz||{|{|{{|z{{{{z{{{{{||||z{{z|{{{{{|{{{{{zz{{z{zz{|}{{|{|{{{zz{{|{|z{{||{z|{{{z{{{|{z{}||zz{z{z|{{|{{{|{|||{{z{{z{{|{{||{{{{{{{{||{|}|||~{{{{zz|{{|{|{{|}{{z|{z{z||}{|||||{{{{z{{|}||||{{{||z|z{{{||{{}|{{{{{|{{{||{|{|{||{{{{{{{{|}||}||||{{{|{|}{||}}||{|z{{{{{|||}{||||{{{||{{}}}|||}||}|{|{|{||{|}~}||{{{|{|{{~|||||}|{|}{{{||||}|||}|{{{{{||||||||}}|||}||}|{}{}{|}}|||{{|||{||||}~|||{{|{|||}{||||||{{{|{{{{{}{|~}~~}|||||||}}}}}}}{||}{}{|}}}|||}|{|{||{{}}{{}}|}|{||{{{{{||}||||{z{{{{{{|||||}|{|{{z{{{|{||{{{{{{{{{{z|z{{|z{|{|{zz|z{zy{{{{|{{|z|z{{zzz{{{||{zz{|{|zzz{{{{{||}{z{||{z|{|{{||{|{{{{z{{{{|{|{{|||{{{{z{||{|{z|{{|{z{{{{z{{{||||}||z{{{z{{||}{{|||{{||{{|{{{||{{||{z{{{{||{|||{{|}{{{{{{|{||||}||{{||{|{{{{}|{{|}||{{{{{{{||||{}||{|{|{{||{|{}||}||{|{{|||||{|{|}|{{z{{{{|{{{||||||z{|{{{{|{}||||}|{{|{||||||||}||}||{|{|{|}{}|}}||{|{|{||}|}|}}}||{{|{{||{|{||{}}|}||||{||}||}{}{||||{||{|{}||||}}||{{|{||}}}|}|{{|{{{|{|||{{}~~}}~||}}|}}|}|}}||}{{|{||{}}{{|}}{z{|{|{|||{|{|||{{z|{|{{}{{{||||{|{{z{z{|{{z||{{z|{{{{{|{{||{|{{{{{{{y{{{|{{|{|z{{|z|z{{{|{{|||{zz{z{{z{|{zz{|z{{z{{{z{z{}z{||{{{z{{z{zz{|z{||{{{{{{{{{{|{{{||{{z{{{{zz{{||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{{{{{{{|{|}{{|{{{{y{z{{|{{||{{{zzz|{|{|{{|{{{|||zz{|{{|{|{{}{{{|{zy{{{{|{{|}||{{{{{{z{|{||{{|{z|{||{z}|{|{{|{|z{{{{{{|{{{||||{||{{zz||{||||||{zz|{{{{|{|{{|{}|{{{|z|{{z||||{||z{{|{{{||||{|}{|{z{||{{|||{{||}|||||{{{{||}||||{|{{|{|{z}|{{||}|{|{|z{{||||{||||{}{|{{}|||}}|}|||{|{{|||}||{}||}{||||{{{||||}}}}{||{{||}}}}{|}||z{|||{||}||}||}|||}|{|}|||||~||||||{|||{}|||}}|{|{{{{}|||}{{{||{{|{{{{|||{{|~~}~~}|||}}}}}~~}|{|||}|||{}}||~|||{|||{}|}|}|||~|{{|{{{{||||{||{|{{z{zz||{z{|||{{z{{|{z{{|{|}|||{||{|{{{{{{{{z||{||{{{{{{|z|{{{z{{z{z|{{{{{|{{|{{|zz{{{|{{||{|||||{{{zz{|{||{{{{z{{{{{{{{|{{|{||{|z{{{z{{{{{|||z{{{{y{{z{|{{{|{|z{z{{{{||{|{{{|||z{{{{{|{||{{|||{||zz{{|||}|||{|{|z{{{|{||}|}|{{z{{||{{||{|z||||{{{{|z{{{{}||{|{{||{{||||{{|||||{|{|||{|{||{|}}{{z|{z|{||}|}|{}|{{{{{{{}||||{|||{|{||}|||||}}|{}{{{{|{{}}||||||}}|||{||}|}|}}}}|||||||{|{}}|}|}|{{||{||}{{||}|}{{{|{{||||~}||}}|||||{||||||{|||||{{|{|{||}||~~~~}}||~}}~}}}}}||}|}{|||}|}}}}|}}|{{|}{|}||||||||||{{|{|}|{}{|||{|zz|zz||}||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{{||{||}|{{{{{{{zz{{{||}{||z{z{z|{{}|{{||{|z|zz{z{{||z{{||{{|zz{{z{{{{{|||{z{{{{{{|{||||}{zz||{z{|||{|{|||{{{{z{{{{{{||||{{{{|z{{|{{{{||||{{{{|{|||{||{}||||{{z|{|{|{}|{{|z{z{|z||}{||{{{|{z{{{{{{z|{{|{||{z{{{||{|}|||}|{|{{{{{{|}{|{|||{{z|{{|{||||{||{}{z|{||||||||||{{|||{|}{|||{}}|||{||||{|{||||}|}|{|{{||{||||}}|||{{{||}{|||{|||}||{||{{{}|}|}{}}||{{{|{{|~|||{||{|{||{{{||{|{||{|{|{{z{|{||{|}~~}}||~}}}}}}}}|||||||}|||}|}||{|{|{|{|||}|}||{{{{{z||{||{||||{{|{z{{{{{|||||{{zz|||{z{{{{{{{{{{{{z{{|{{{{~{{{{|z{{z{{{{|||{zzz{{{zzz|{||{{|{{{|{{zz{{z|{|{{{|{zzz{{||{|{{|{{z{{{z{{zz|{z{{{|{{{zz{{zz||{{|{z{{{{{{zz|{||{|||{{z{{{{{||||{{|{{z|{z{{{{{{{{|}|{{{|{z{{||{{{||{|z|z|{{{{|{{{||{{z|{{{{{{z}||{|{{{{||{{{||}{||||||{z{{{|{||}|}||{z{{{{|{{|||{||}{{|{{{{z{|}{}}}||{{||||{||||}||}{{{|||{||||||||||{|||||||~|{|}|||{{{{{{{}||||||}}|{{{|{||}}|||}||{{|{|{{|{|}||||}|||{|{{|{{|||}|||{{{|{{|||||{|||{{z|{{z{||{|~}}}}|}|~~}~}|}~~|{||{|}|}}~|}|||{{|}}{|||||||{|||{{z|||||{||{}||{{{|{{|||{|{{{{{{{{{{{|{|{|{||{{{zz{{{|||||{{{z{z{{{{{|{||{{|{{{zzzz{{{||{{|{{{{{{z{z||{|{{||{|{{zz|{{|{||||{{{{{{{z{z|{{{{{|{{z{|{{zz{{|{{|{{z{{{{{{{|{||||}|{{{{{{{{||||{{{{{{|{||{{|{|{|||{{z{{z{{||}}|{|||{{{|{z{|}}{||||{{{|{{{{{{||{|}{|{{{{|}z|||{|{}|||{{{{|{{||||{}||{{{{|{{{|{||||||{{{|{||||}|{|||||{{{{{{}}|{||}|||{|{{|{|}|||||||zz||{|{||{|}}~|||{|{{|{}||}|}}||{{}|{{||}||}|}}||{||{|}|||}}|}~||}{||{{|||~}|}}{{||||{{{||}|}}}|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{|||{|}|{|{{{zzz|{{z{|{|{|{{zz{{{||{{{{{zz{{{{{z{|{{{{||z{{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{|||z|{zzz{|{{{{|{|||z{{{|{{|z|{||{yz{{{zz{{||{{||{|zz|yzz{{||{~||{|{{{{{{z{|||{|||{{{z{|{{{{|{{{||{||{{z{{{|{}{|{{z{{{z{{z|{}|{{||{{{{{{{z{|||{|{|{{{z|z{{z{||||||{{{z|{{||||||{{}|{|{{z{z|}|||||{{{z{{|{{{|{||||{|z||{{|{|{{|||{||{{{|{{||||}{|{||{||{{{|{|{{{|{|{{{|{{z{}||||||{{{|{||{{}||||||||{|||||}|||||}|~}|{}|{{|}|||||}|||{|{{|{||}|||}|||{|{{{|||||||}~{{||||{||||}||||{{|{{{|{||||}||}||{{{z|{{}}}||}|{}||||{{|||||~~~~~~~~~~}~~|}||}|}|}||||}|~||||}||{|||}|{}|||||{z{{||}|||}||z|{{{|z|{{||||||{|z{{|{{|}{|{|{{||{zz{{}||{|||{|z{zzz||{{|{{|}|{{{{zzzzz{{{z||{|{{{{{z{|{|||||{|z{{z{{z|{{|{|}{{{|{{z{z{{}{|{||{||{{y{z{{|{|}||{{||{{{{{||||||{|z{{|{{|{|{{||{||||{|{{|{{|}|||}|{||{{{z|}{{|||}|{{{{{{z||}}|}|||{|{||{{{~||{{|||{{{{{z|||{|||||{{|||{{||}||}||{|||||{}{{}{{{|}||||{||{|{||}||||}||{|{{{|}|||||}||{{{|||}|}||{|}|{||{|{|{|~{|}}}~{z{|{{|}}|}|}||||||||||{||}~}}}}|{{|||||}|}|}}}|{|||{|||}|}||}}|||{{||{|}|}}}|||||||z|{||}|{~~}~}}~~~~~~}}~}}||||}~}}}}||||{|{{y{|}|||}}|}{{}{{|{|{{||{|||{|{{{{z||||||||{{{{{{{{|}{{{||{{{{{{z|z|{|zz|{{{{{{zzz{{{|z{|||{{{|{{zzz|{|z|{{z{z{{{{{|||z}{||{{{{zz{{{{{|{|}{|z{{|{{z{|{|{{{{{zzz{{{zz{{{{|{{{{{{|{{{{z||||||{z||{{{{{{{{{{|}{z||{z{{{}||{|}|{{{|{{{{{||{|{|||{{||{{|{|{|||{|{{||{{{{||}|{|||{{{{{{{|{||{|{{{{{{{||||{||||}||{|||||||||}}{|}||{||{{|z|}}|}}||}{|||{|z|~{}||||{|{{{{|}{}|{}{|}}{||{|{||}}||{|||{||{|||}{|}||||||}{{|{||||||||}|{z{||{||{|}|||}{{|{{||{|}|||}|||{|{|||{}}}||||||z|{{{zz{{||{~}}}|~}}}~~~}|}}{||}|}}|}|~|}|||{|{||||||~||{|{|}{{{||{{{|}{{{{z{|{||}{{||||{{{|{z{{{{{{||{{z|z{{{{{||z{|{|{z{zzzz{{{{|{|{|{{{|z{zz{||{{{{{zzzz{{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|{|{{|{|{||}|||{{{{{{||}}|{|}~}{|}zz{||||{|||||{{{{|{z||||||}}||{|||||}|}||||}|{{{|{zz{|{||}}|||||{{|{{||~{||{{|{{{{{|||||{~~}~~~~~}}~}}}{|||{}}}|}}}|}{|{|{||{||{||||{z|{{{|{{|||z{|{|{{z{{{|{{||||||{z{z{zz{z|zz{z|||{{{zzz|{{{|{{{|zz{{|zz{z{{{{{{{yzz{zz{z{{|{{{|{{{zz{{zz|||{{{}{{{{{z{z{{{|||{{z{z{{z{{{{{{z{|{{{{zz{{{{{|z{{|z{{z{z{{z{z{{{|||||{zz{{{z{|{{|{{|{z{zy{z{{{|{|{||z{{{{{{{{|{{{||{{{{z{{{{|}|{{|{||z{z{{z{{{{{{{{{{{{{z{{{}{||{||||{|{|{{{{{||||}|{|{z{{{{{|||{||||{||{z|{|}||{||||{z{z{{||||||||}{|{{|||{{||||||||{|{{{{{{}}|||}|}{{{{{{|}|||||}||{|{|{{|{|{{||}||{{||{{||{|||{||{{|{{|{{||{||{||{{{|{{|z|{{|||}|{z{{z{|{z{{|{~~~~~}~~~~}~}||||}}||}}|}|||}||{|{|{|||}|||{{|{{z|||}|{{|||{|{||z{{||{{||}{{{{|z|y{|{z{{|||{|{{{{{{{{|z|{{{{{z{zzz|{{|||||{{|z{{{{{{{{{{{|{{{{{z{z{{{{|||{{{{z{{{|{{{|||||{{{zz{{zz{z{|{{z{{{{{{|{z{{z{|||zy{z|z{z{{{{{{{|{z{|{z|{{}|||||}{|{|z{{{{||{|{{|{{{{{z{{{{||||||{||{|{{|||||{|||{{{z{z{{}||{|||{|{{|{{{{z||||||||{{{{{{||||||}||{{{z||||}}{|}}}|||||{{{{{}||{||||{{{||{{|}}}|||||z|{|||{|}|||}~||{{|{|{||}|{}|}|}|{}|{|||}}||||{|{|}|{{{||{{|{}}}}|{{|||}|}||||||||{z{{{{||{}}}||{z{{{{{{}|||||||{}|{{{z||||{~~}}~}~|}}}|}|{}}}}~}}}{|||{{|{|||{}||}|{{{||{z|||{|{|{||z{{|{{|{|{{||{{{{{{{{{{||{{|}||{{{z{{|z||{{{{{{zz{z{z{{{||{|{{zzz{{{{{{{{{{|||{{|{{{{z{{|{{{{||{{{z{z{||{{|{||{{{||{{{{|{{{{|{{{|yz{|{z|{{||||{{{{{z{z|{|{|||||{{z|{z{{{||{|{|{{z{zz{{||{|||||z{{{z{{{|||{||{}{{|{{z|||||{|}{|{{z|{|{z{|||||||{{|{{z||{{|{||{|{|{z{{{|||||}|}}{|zz{{{{|||}}|||{{z{{{{z|||||||||{|{|{{{{|{|}{||||}{||||{|}|||{}}{|{{{{{{}|}}}}||{|||}{{|}|}|}|||{{|{{{||||}|||}}{|{|{{||{||||}||{|{|{{{{||}|}}|}||||{|{||{||}~{{|||{{zz|{|{{~~~~}~}}~|}||}~~}}~~}|{|||z||||{|||}||{{{{|{{||}{||}|{|{z{|{z{|{|||||{z|zz{|z{{{||||{}{{z{{{z{{{|||{|{{{{{|z{{|{|{|||z{z{{zz{{||{|{||{{{z{{z{|{|||||{{{{{z{zz{{|{{}||{|zz|zz{{||{{{|z|{{{zzz{{|{{||||{{{|{|zz{{{|||||{{{{|z|{|{{{|||}|{{{z{{{|{|{{{|}{{{{z{{|{|}|{}||{{{|{{z{{{|||||{{{{z{||{{||{||}|||{|z{{{|{||{||{|{|{|{|{||||}||}|{|||{||{}{}|}}}}zz{{{{|{||}}|}||{|{|{}|{|||||}||}|z{}||||}}}}|}}|{||}{||}|||}}}}||||{{|}|||}}}}}z|}{||{{{||||}|}|||||{{||}}|}}}}{|||{|{|||||}}}}{||{}||||||||}|}||z{z|{{|||{}~~~~~}~}|{}}|}}}}}}|}|}|{||||||||}|||}|{{{{{{|{{{||{|||{{{|{z||||||{||{{{{{{{||{{{}||}{{{{{{z|{|z|{|{{{{z|{{{{|z|||}|z{zz{{{z{{{{{||z{{{zzzzz{{||||||{z{{{|z{z{{{|{||zzzz{{z{{{{{{{{z|zz{{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{zz||{|z{{{{||{{|||}{}||{{{{z{{{||{|{||{{{z{{{|z{{|||||{{{{{{|z{|}{||||{{{{{z{{{}|||~||{{{z{{{{{|{{{|}{|z||z{{|{}|{|}||{{||{{{{z|{|||}}{{{|||{{||{{{}}}{{|{|{{|{|}|||}|}{|{{{|{|}|||}|||||{|{|||}}|{}}}}{{|{{|||}}}}|}||||||{|}}{{|||}||||}|{||{|{||}|}||{||{||}|{||}|||||||{{|{}|}||}||{||{{|{|}{{{{{|{||{{{z{||{|}}}}}~}}|{}|||}~~}}}}~}|||{|{|}}|{}{|||z||{z||||||||{{|{{z{{{{}{||||||z{|z{z{zz|{||{||{|{z{zzz||{{||{{{{{|||zz{{{{{|}{{zz{{{{z||{{|||||z{{{|zz{z{{{||{z{|{z|{z{||{||||{z{{zz{z{{{|{|||z|{zz{{zz|{{{|{|zz{{{{{z{||{|||{{||z{{|{z||||{|{|{{||||{{|{|{}{|z|{z{{{{|||{|{|||||{|y{{{{{|{||||{|z{{{{|||{}||{|{{|{z{{||{||}|||{|{||{{||{||||||||{|{|{|}{||{|||{|{|{z|{}}}|}|||{{|{|{z}|||||}}|||||||||||||||||{|{|{|{|}|||}|}}{{||||{||}||||}{{|{||{}|||||{~||}{{|||{|||}}|}}|{|||{|||||||}}|||{|{{{{||}}{}{||{{{|{{{|{}||~~~~~}~||~}{|}}~|}{~}~}}|}||z{{|{|}|}{{||{|{{z{||||{|}||{||{{z|{||{{||{z{{zz{z{|{|{|{{|{{{{|z{|{{|{{|||{z{{z{{{z{z{|{{zzz|zz{{{{{|{{{}{z{{{{z{{|||{|{{{{{{z|{{|{{{||||{{zzzy{{{{{{{|{{{{{zz{|{{{|z{}||{{{{{{zz|{{|{|{|||zz{{{{{||{|{{|{|z|{z|{{{|{|{{|z{|{z{{{|{{{|{||{|{|{z|{{||||||{|{{{||z{|||{|{|{{{{{||zz{||{|}{||{|{|z{{{|||}|||{||z|{{|{|{||}{}|{|||z{{{{}}}||}|||{{{{||||{}{|}{|||{|{{|}}||}|}|{||{|{|{}|}}~}}|{{||{}||}}~|}|||{{|{||{}|}|||}|}|}||{{|}||||}||||{|||{|{|||||}}}||{||{{||}||{|||||z{z{{{|}||}~~~~~}}}|}||{}|}}|~}|}{{{{|{z|}}|}{||{||{{{z|{{||{{|{||{{z{{{{{}{{{|||z|z{z{{||{{{||{{{zzz||z{{{{{{|{{{{{{{z{{|{|{{z|{zz{zzy|{{{{{||zzz{{z{{{{{{|||{{{{zz{{z{z{||{{|{|zzzz{{{|{{z{{|{{{{z{zz{{|{z{||{{z{{y{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{|{{{{{|{z{|{||{{zzzzz{|{{|||z{{{{{{z{{|{{|{||{{{{|{{{{|{{{}|||{{{zz{{{{{|{{||{||{|{{z{{||||||{{{{||{|z{||{||{z{|{z||{||}||||{{{{{z||{{||{{|{||||z{{{|{{|||||}{{|{{{{z|}|}{}|}|{||||{z||||}|}||{||{{{{|}{{||}||{|{|{||{|||{|||}{||{{|{{||}||}}|{||||||{}|}||}|}{{{{|}||||}|}|}|{||||z||||}}}||||{{{{{|{||}||}|||{|{{|{}}|||}||{{|z{z|{}|{z{~~~~}}||||}|||}|}|{}|||||||{|||||||||{||{zz||||||{}{{z{{{{{|{||{|||}{{{{{zz{{||{{||{|{{{{{z{{|{z{{{||zzz{{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{{|{|{{|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{{{{|{|}z{{{{{{{z|{{z|}|{|{{{{zz|{}z{|||{{{z{{{z{{{{{{{|z{z|{z{z{{|{|}|{zz{{z{zz|{{||||{{{|{{{{z{{{|{{{|{{{{zz{{|{{{{{|{z{zz{{z{|zz{{|||zz|{{z{{z{||{{||{{{z{z{z{|{{|{{{|zz{{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{|{{|{|{{|||{|{{{{{{|}|||||{{{{z|{{{||{|{{{zyz{{{{{z|||{{|{{{{{{{{{{|{{|{||{||{z{{{{z{z|{||{{|z{z{{|{|||{|||{{z{{{{||||{||{{{{{{{z{{||{||||}{{z|z|y|{|{||{}zz{{{{{||{||{{||{z{|{|{{||z|||||{{{z{{|{||{||}||z{{{{{{{||}}{|}{{||{{{{{|}|{|}}{{{|{||{||{{|}||{|{{{|||||||}||}|{{|||{z{|}|}{||||{}|{{|||}}}}|}||{|||}|{||||||||||{|z|||||||}}||||{||{{z{||{}|}{}{{|{}|||~||{}||}|||||{||||}{}|}||{{|||||~|}}||||{{|{{{{{{||{|}|{||{{{||{||||~~~}~|}|}|}}}}}|}}{|{}||||||{||||}z{{{{{{||{|||||{||{{{{{|{{|{}{||{{z{|{{{{{z{||{{{{z{{{{{{|zz{|{{{{z{{z{|{zz||||{{{{|{{{{z{z{{{{{{{zz{zz{{{|z|{|{{{{{zzz{{{|z|{|{{|{z{{z{{{|{{{||{zz{{{{{{|{||{|{z{{|{{z{|||||||{|z{{{{{{|{|{{||{{{{|{{{|{|{{{{|{{|{{{{|}{{{{||}{|{{|{||{|{|{||{|z{{{{{{{}||||||{|{|}{{||||{{||{{{|z|{{||||}||}|||{{{{z||||}||}}|{{{|{{||}|||}{||{{{|{{{}|}||}||{{{{|{{|||{||||||||{{{|{||}}|||}}{||{{{{|||||||||zz||||{|||}|}}}{||||{||||{}|}}~|||{|{z|{}|{||}}}{{{|{|{|||}|}{|{{|{{{|||||}|~~~~~}|}{|||}}}}}}}}|{{{||||}|||{||{z|{z{|{|||{{{}||{{z{{zz|||}||{|{{{z{zzz{{{{{{|{{{z{{|{z{||{{{|{|{{{|zyzz{|{{|||{{{{{|zz{{{zz{{{|{z{{zzz|{z{{||{{z{z{{z|{{{{|{{{|{z{zz{{{{{{z|{|{|{{{z{z{{{{|{||{zz{{|{z{z{|{{|||{{zz{{{{|{|{|{}{{|{{{{{|{|}}}||{||{{z}z|{{{||{{|{|{zz|{{{{{||{|{|{{{{z{{|{|{{||{{{{{{{{|||zz|{{{{{{{{{||{||||||zz|{|{{{}z|}{||||{||{{{||}||}|}|{{zz{z{{|||||||||||{|z{{|||||||||{{{{|{{|}||}|}}|{|||{|{|}}|||{||z{{|{{{|{||||{|||{{|{|z|}||}|}}{|{{{{{|{|{{}|}||||{|{{{|}|{||}{|{|{|{{{||||{~}}~}~}}{}|}|}}}||}{{{{{|||{||||{|{{{{{{||{|{|||{||z{{{z{{||||{{{z|{{{z|{||z{{|{{{z{{zz{z{{{{{|{z{{{zz{{|{{|{{{|zzzzzz{{z{|{{{{|{{{zz{z{z{||||||z{{z{zzz{{|{{{|{z{{{zz{z{{{{{{{{|{{z{{{{{|{z{||{z|{{{{{{{|{{{||}{{z{|{{{{|{|{|||zz{{||{z{{||{}||{z{{{z{{{{{{{||||{{z{{{{||||{|{|{{{{z{{{||{|{|||{z{{{z{{|||{{{|||{|zz{|{{|}||}|{{{{{||{{{|||{}|||{|{{{{{|{||||||{{|z{{{z}{||||||{{|{{||{||||}||}|{{|{{|{|}{||||}|{||{{{{|}|}}||{|{{{{|{|{||}|}|}||{||{{|||{}||||||{{|{{||||{|||{{{{{|||{{|||}|{{|z||{z{z{|||}~}~||}~}|}}}}~|}}}||||||{}|{~~|||||{{||{{||}|||}|{{|{{|{{||{{|||}{|{zz|{{{{z{{|{|zz|{{{{{|{{|||{|{{|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{{||{{||zz{{z{{{||||{{{{{{{{z{{z{|||||{z|{zyz{z{{{|z{|{{|z{{zy|z{}{{{||zzz|z{z|z{{{{{||{{{z{{z|{z|{|{|{{{z{{{|{{{{{||}||{{{z{{{{||{{z{{}|{|{z|z{|{{||||}z{zzz{{z|||||||||{z|{{{{{|{||||{|{{{|{|{|||||{}|{|{||||||{{|||{{zz{{{{z{||}||||{{z|{|||{|||}{||}{|{{{{||{|||||}||{z|{{{{|{|{|}}}{{{{{|||||||}|~}|{z|||{{}||||||}||||||{{}|{|}||{|||{|{{{||}}|||}||{{|{{|{|{|}|}}||{||z|{{|}|{|}}|{|{{{|||}|{{||}||{{{|{||}||{~~}~}}|||}}|}|}}}|||{|||||}}{{{|||z|{{{{||}||{{{}{|{zz{{z{||{||{}|z{{{z{z|{|{|{{z|z{z{{z{|{{{{||{{{z{{{|z{z{{z||{{{{z{zzz{|{{|{|z{z{{{zz{{|{||{||||{z{{z{z|{{{{{|z{{|{{{z{{{||||}{zzzz{|z|{{z|||{{z{{{{zzz{{{{{|{|{{{{zzz{|{|{|||{{|{z{{{{||{{{}|{z{z{{z{{|{{{|{|{{{{zz{{{|{|{{{|{{{{z{{zz|||{||{}{z{y|{{|}|{{|{|{{{{{|{{{{||||||z{{{{|{{||{}{||||{{{{{zz}{{||}|||{{{{{|||}|||}~{||z{||}{{|{||}|}||{{{{{{{}{}||}}}{|||{|{{|{|{|}||{||{|||||}|}||}}}{|{{{|{||}|||}|{|{{{||||{|}|}|||{|{{{|{|{}||}{|||{{{{z|{|||~~~~}}~~}}}}}}}}|}~|}{{{|{||}|||}}}|{{{{{|||||{{{|||{{z|{{|}{|{|{||{|zzz|{|||{{||{{z{z{{zz{|{z{{{{|z{z{|{{{{{||{||{zz{zzz{{||{{{||z{{{{{{{{{|||{||{{{zzz{|{{{|{{|{{{{{{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|{||{{|z|{zz{{{{{{{|{{{{|zz|{{{z{{|{{{{{{z|{z{z{{{{||||{{{z{{{{z{||{||{||{{|{{{z{{|z|{{}|{{{zz|{{{{{{}{|{z{|{{zz{|{}||||{|||{||{||}||{|}|{{{|{{{||||{||||{|{z|{{|{||||||{||z|{{|{||}|}}|{{||||{{{}|||{||{{{{{{{||||{|{{{{|{||{{{{|||}}}||{z{{|{{|}{|{}|~{{{|{z|{{|||||}||{|{|{{{||||||}}|{{|||||}|||||}||{{|{|{||}||}|}}}{|{z{||}|||{}||}|{||z{|{}||||}}}|{|{|{{|}}|||}|{{{{{|{{|}{{|}||||{{|{|||||||}{{|{||{{{||||||~~}}}}}}{|}}|}|||~}|||{|{||~|||||}||z{zz{{{{|{|{{}|{|{{{z|z|||{|{{|{|{zz{zz{{{{z|{z{z{zzzz{|{{{z||{{zzy{{{{{{{{||||{{zz{{zz{{{{|{{{{|z{{{z{{z|{{|||{{{z{{z||||{{|||{{{z{{{z{{|{z|||z{{z{{yzz|{{{|{{z{{{|{z{z||{}|{||z{{{z{{{||{{{|}{{{{z{{{|{{{{{{}|z{{|{{{|||{|||{|{{{zz{{{|}|{|{{{z{{z{{{{|{{{}||{{{|{{{{|{|{|}||{{{{{{|{||{|{|||{{{{z|{{|{|}||||{z||{{{{|}|}||}{{z||{{{{|}{{|}}|{{|}||||{||}|||}|{{||||{}|||||}}}{{|{{{{|}||||}|}{{{{{{{||}|||}~||{|||||{}|||}}|{{|{{{{|{}|||}}}|{{|{{{{|||||||}{|{{}z|{|||{{~~~~~}|}}||}|~}}|}}}}{}|{{{|{||||}||{{z{{{|||||||}}|z{z{{|z{|{{||||{{{{{{{{|{{|{||{{|zz{{{z}{|{{|{|{z{{{{{{{||{{{{|{z{{{zzz|z{{{|{{|{z{z{|z{||z||||z{{{z|{{||{}{{{|{{{{z{{{|{{{||{|z{{{{{zzz|{{{||{{{{zz{{z||{||{|}z{{{{{|z}{{||{||{|{z{{|{||{|{||}|||{{{{{{|||{||||{z{{z|z{}{|{||||{|{|{{{{||{{|||{{{|z|z{{||{{||{{{{|{|{{{{||||}|{|{{|||{||||}|||||||{{|{||{||||}|{{{|{{{|||||}|}}|||||||||||||||||||{{{|{|{}||||{|}|z||{}||}|}|}||||||{{|||}|||||{||||||||{}|||}{|{{{{{|{|||||}|{}||{{{{||||||||{{{{{{|{|||||~}~~}~}}|}|}}}~}}~}||{|}|{||||||||{|{|{{{{||{{|{|||{{{zz|{z{{|{{{|}{{{z{{{{{{{{{|||{{{{{{{{{||{{}{{{z{z{zzz{||{{|}{zzz{zz{|z{{|{{||{|zzz{{{{|||{|{|{{{z{{zz{{z{{{}{{{z{{{{zz{z{{||{|{z{zz{{z{{{{|z|{zz{{zz{{|{z||{{{{{{|{z{{{||{{{||{{{{{{z||{||||}|{z{{{|{{|}{|{}|{{{{z{{{{}||{}{{{{{|{zz{{{||{|||{{z{{{|{|||||{||{{|{{{{||{||||{|{||{{{}{||||{|{}||{|{{{z||||}{|||{{|{z{{|}|{|~}||||{{||{{|||||}}}{{|}||{|}||||}{|z||{|{||}||||}||||{|{{{{|{{||}}||{||{{}{{}|||||{||{{||{|||{{|{|||{|z|{|{|||||}{|||{|{{||{|||~~}~}}|}}}||}||||||{|{z|}{}||||{|{||{||z{||}||||||{{{{{{{||}||||{{{y{{z{||z{{|{{{{{{{zz{|||z{||{|{z{zzz{{{|{{{{{{z{{{zz{z{{{||||{z{{y{z{||{{{{||{{{zz|zz{{{{{|{}|zz{{zzz{{{|{{||{{{{{{yzz{|{{{|}{{{{{{{z{{{|||||{{zz{z{{||{{{{||{{z{zz{{}||{{|||z{{{{zz{|}|}||{}|{{|{{{|z{{|{}{{{z|{{zz{}|||{||{|{{|{{{{|||{|{{}{{{z|{|{{||||||}{{||z{|{|||||||}|{|{{{{|||{||{||}{z{|z{{}||{}}}}||{{|}|{||z{}}|}}{{|{{|||~||{}|}{|}{{||||}||||}}|{|||{||||{||}}|||||{|{|}|}{}|}{||}{||{{||||}||||}{{zz|{|}|}||||{{{{{{|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{|{{|{|{|{{|{|zzz{|||{||||{|{{z|z{{{{{||{zz{{{z{{}{||||{{{z{{{z{{{|{|{}}{|{{{z{{{|{|{|||||{{{{z{{||{||{||||{{{|{|||||}||}|||{|{{{||{|}||}{{{{|{|z|||{}||||{|{{{|||}}|}}||{{|{||{|{}{}||||}|{|{||||}{}||}||{|{{{{|{}{||||||{{{||||{|{||}~||{||{{||||||~}}}{||{{|{|||||{{|}|{z}|||{{}||||}|{{|{{{|{}||{{~~~~}}}{|}}}}|}}}}|{{{{||{|||||||}}||{|zz{|{|||{|||||{{z|{|{}|{|||||z{z|{{z|{|||||{|z{{zz{{{{}||{||{{{|{{{|{{|{|||{z{z{|{{|||{{|{{{z{zz{zz{||z|{|}{z|{{{{{{{{|||||{|{{{z{{z}{|{{|z{{z{|{{{{|{{{{{}{{|{{{{z|{{||{}}{{{{{y|{{|||{||{{{{{{|z{}|{{{|||z{{{|{{{|||{|||{||||{{{{||{|{|{|{|{{{{{{|||{{|{||{z{{{{{{{|{||{|}{||{|{{{|}||}{}{{||{{||||{|||}{|{{{|{|{||||{|||||{||}{{}||{||||}}||||{{||}||}|}|{|{{|||{|}|~}}|||||{{{|}}|}||||}{{|{{||}}}||}}}}{{}||{|||||}}|}|{|||{{||}}|}||}|||{{}|{{}|}}}|}{||z|{||||{{}}~}~~|{~}}}}~|}}|{||||{{||||}|}|{z|{|z|{|}||||}}|{|{z{{z||||||||{|{{z|{{{||{|{|{|{|{z{{{{||z{}|{{z{{zzzz{{{||||{{zzz{z{||{{|{||{{{{z{{z|{|{{|{||||{{{{z{{|||{|{{{zz{{{{zz{{z{{||{{y{{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|{|||{y{zzz{{{||{{{|{{{{z{{{{z|{|{{|||{{{|z{{{{|||{{||{{{{{{{z{{|}{|{||{z{y{{|{{|{{{|{{z{{{z|{{{{{|{{{zz{|{{{{{|||{||}|{{{{z{{|{|{|}}{{{||{||{{{{||||}{{||{{|{{|}||{||{|{|{{{z||||{{|||{{|{{{|{|{{{||{|z{||{{{{|{|}|}||{{{|{||}{||{|}}{{|||{z{{|}||{|||z{||{{{|||||}|}|{{{{||||||}}}}}|{{{|{|z|}||}}}|}{|||{{||}||}}|}||{{{|{|||}|||}||||{}||{|}||||}}||||}||||}||}}}||||{|||{||}|||||||{|{|{{{||||~~~}|}}||}~~~}|||~{|{|{{|{}|||||}||{|{|{|z|{{|{|||{{|z{|{z{||{}|{}|{|zz|{z{{{{z{|{|{z{z|{{{{|{{{{{{z|zzz{{{{{z{||{z{{{{{z{{{{{z{{{{{zzzz{{{z{{{{{{{{{{{z|zz{zz|{||{z{z{zzz{{{{{|{|{{{z{{{{z{z{{{{|{{|{{{{z{|{{{||||z{{z{{{|{{|{|{|{{{{{z{{{{|{{}||{z{{{{{{{{{{z|||{{{{|z{{{}{|{}||{{{{{{|{{|||{{}|{{{{z{||{|||{||{{zz{{{z{|{{||}||{{|{{{|{||{|||||{{{|{|{{|||||}}{|{{{}|{||}|{|||}|{{z{||{{|{}|||}|zz|{|{{|}}}}|}}||{|||{|}||}{}|}}{{||{{||z{{|}|}}|||{|{||||}|||||{{||{|{||{|{}}|||||{{||{|||{}{|||||z{{{||||z~~~~}}|}{}||}}}}}|~}{||{||{{{||||}}|{|z{|{{{||{{||{|{|{{{}{||||{||{{z{{||zz{|{{{{||z{{{z{z{{{{{{{||{{{z{z{|{{|}{|||{z{z{y{{{|{{{{{|{{z{z{z{z{|{{|{{{{{{z{{z{{z{{{{||z{z{y|{{{{{{}{{|z{zzz{{{{{|{|||{{{{{||{{||{{}|}|z{{{{{|||z||{{|z{z{{{|z{{|{{|||{{{|{|{{{|{{|z{|{{{z|z{{{|}{|||{{|{{{|{z{z||||}|{z|||{{{}|}||}||||{{}{{z{|{}|}||{{{||{|{{|||||}|{{{|{{z{|||||{||}{{{{||{|}|||}|}{||{{{||{|{|||}}}||{|}{z{~}||{}}|||||||{||}||||||{z|{|{|{{}||}}|{|{|{|{|}|||}||||||{{z||{|||||}}}|{{||{{||||}{||{||z|z{|||||{~~~}}}}||||}}|}}|}||{||{|{||||||||||{{{{{z|{|||{|||{|{z{{{y{{|{{{{|zz{z{{{z{|{|z{|{zz{{{{{{z{|{z{{{{zz{{{zz{{{{||{{zzz{|{z{{|{{|{{|{{{{{{z{{{{z||{|{{{{z{{{|{{|{{|||{{z{{zz|{{{{{{||{{z{{zz{{|{|||{{z{{{{{{{{||{{{}{}{{z{{{|}||||{|{{{||{|{|{{|{}|{{|{z{{{{|{{{}|||||zz|z||{|}{||||{{|zz{{z||{|||}|{{{{{z{z{||{|}||{||{{{{{}||}|}||{||{}z{{{||}|{|}|{{{{{{{||}}||}}|{|||{|{|}{|}}||{|||||{{||||{}||||||z{{{|~}|||~|{{|{|{|||}|||}}|}|{{}}||||||~|}~|{|z||{{{}|||}|}{|{{{|{{|||}|}|}|{|{{{{{||}|||||||{{{z|||||{|~~~~~}}}}{}}}~}|}}}|}}{{|||{|||}|||||{|{{{{z{{|}{|{|{|zy{{z|{{|{||||{z{{{z{zz||{{{||{{z{{{z|z||z|||{{{z{{{{|{{{|{{||z{zy{yz{||{|||{{{{|z{zz|{z{||{||||zzzzz{{||{|{|{z{{{{z{{{{{{{||{{{z{zz{zz{{{{z{{|{{{{{yz}||{{|||{|{{{z{{|||{||}|y{{{{{|z{{{|{|{|{z{|{{{||||||{{{|{|z|{|{{|z||||{|{{{{|{{|||}{}||{{{||{{{|{|{||{{{{|||||{||||}}}|||{|{{{|||||||}}||z|{z{{{||||}}{|{{{|{{|{|}||}|||{{{||}{|}||}|}}}||}|||||~}||||}|{||{{||||||}}|||{}{|||}||||||}}}{|{|||{|}||||}|{|||||||||{}{|}}||||||{||||{{||{{|{{|{{{}|}||~~~~~}||||}|}}|}||}|{||{{||}|||||{|{{z|||{|z|||{|{|{|{{{{{z{|{|{||{|{{{z{|z|{{{{|||{|{{z{{{{{||{|||{{{{{{{{{{{|{{||{{{z{zzz{{|}{{||{{z{y{z{|||||||{|z||zzz{{|{~||||{|{|{z{z|{|{{{|||z{z{{{|z}{||{{|{{{{{{{{{|{{{||}|z{{{{{z{||{{|{}{{{zz{{{{{|{||||{{{zz{{{|{|||||}|{{{|z{{{|}|{||{|{{{|z{{{||{{{}{|{{{|{z|||||{||}|{{{{{|{{|}||||{||z{{|{|}||||}}||{{||{{z||}|||||}{|{|{|||}|{||}||{||{|}|}}|||}}|}|{{{||||~||||}|||||{{{||||{}|}{|||{|||{||{}}||}}{|||||||}|}}}~}||{{{||||}}|||}}||{|{{|{|}|}{|}}{{{{|||{|{||{~~~~~}}}||||{||~}}|}}|||{z{{{||{||||||{{{{{|{|{|||{||||{z{z|z{|||{|{|{{{z{zz{{}{{{||{{{{zzzz{{|{{{|zz{z{zz{y{{{{|{}|{z{zz{{zyz{{|{z||{zzzz|{{z{|{|||{{z{|zz{{|{{|{z||{{{{zzz{|{{{{{||{{zz||{{z}|{{||{{{{zz{{z{{||{||||zz{{|{z|{{{{{||{{{{{{|{{{|||{||{|{{{{z{{{}{{}||{{{{|z|{|}{||||{|z{{{{{{{|||{{}|{{{{{{{{{{|{||}||{{z|{{{|}||}}{{{{{{z|{|||||||||{||{{{{{||||||}||z{{|||{{|}{{|}}||{||{|||||||}||}{{|{|{|{}|||}}||{||{||{|}|}||}}|{{|{|{||{||}|}{{{{{|{|{|}{}||||{|||{{|{{}|||||}{||{{{{{|||}|}||{|{{|{{{{{{{|~~~}}}~~}|}}}}}}~}}|}||{|{}|}|}}|{|{{{{{{|||||{||}|{{|z{zz|||||{{||{|{{{|{{|{|{|{||{{z{{{z{||{{{|{|{{|z|{{z{{|{|||z{z{{{{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|}|{{zzzzz{|{{|{||{{z{{{{z{|{|{|{||{z{z{z{z{|{z||{|{zzz{{z|zz{{{|}{{{z{zz{{{{||{{|}{{{{{z{z{|{|{{|{|{zzy{{{{|{{|}||{z{{{{{z{{||{|{|{{{z|{{{{{{{z|||{{z{{{{{{{|z{||||z{z{{|{|{|{{{|||{{{zz{{{|{|{}{{{{{z{z{{z|||{|}||{z{||z{||{|z{{|||}{{{|{|||||||||{{{{|||||{}{||}|{z{{||{|||{{||{|z{{{{{||}|{||||||{|||||{}{|}||}|{||{|{||{||}}|}||}|{||z}||||||~|{|{|{{{||{}||}~}{{||}z||}}||}}}{|}{{|{|||}|||~}||{{|{{{{|||}|}||{|{{z|{||||}~~~}}}~~|}|||{}}{|}}}}}}|{{|{{{||}|||||{z{|{{{|{{||{{||{{zzzz{{||{||{|{{{{||z{z{z{{{||{z{{{z{{z{z{|||{{{{{{z{zz{{{{|{|{{zz{{{zz{z|{{{{|z{{{z|{{{|{z|{||{{|{z{{{|{{|{{||{{zzzzz{zzzz{{{|{|{{{z{z{z{{{|{|||{{{{{{z{||{|||||yz|{{{{||{|{||{{{|{z{{{{{{||}|{{||{{z{{|||{{{|{|{{z{{z||||{|}|{{|{z{{{||||{{|{{{{{||{{||{|||||{{|{{{|{||{||{|}}|{z{||{||{}{||||{{{{|{||||{|{}||z{{|{{{|}|{|}|}|||{||||||{||}|||{|{{{|{|}|}||}||}|}|||||||}{||}|{|{}{||||||||}||||{}|||}||}}||}{||{|||{|||}||}}}{|{{{{||||}||||{||{|{{|}{||{}~~~~~~~}~}}}||||{}||}|}}}|{|{{{|{|{|{{{|||z{{{{{z|{|||||{|{{{{{zzz{|{{{{|{|{{|{{{z|z{{|{{{{|z{{zz{{|{z{{z{zz{zzz|{{|{{{|{{z{{z|zz{zz{|||{{{zzzz{z{{{{{|{{{{z{zzz{|{{|{{{||{{zz{{{{{{z||{z{{z{{{zy{}{{{||{{{z{|{|{z|{z|{||{{z{{z{{|{|{|{{||}{{z{{z{{{{|||{{{{z{{{{{{|z|{||{{{{{||z{||||||{{{{zz{{{{|||{||{|{{{|{{{{|||{{||{{{|{{{{|||}{|}|z|{||z{{}|||||||{{||{{{{||||}{||{{z||{zz|||||}|||{{{{|{|{|{{||}}|{|{{|{||}|}}|||{{||{{|{{}}}}||}||{{|{|||||||}{}|{{|}|{}|||}||}||||{|z{{||}|{|||{{{|{{||{|||{|}||||{|{{{}||{}~~~~~~}}}~|||||}|}}|}}}}||||{{{|{|||||}}|{|{{{|{|||{|{|||{{{z||{||||||{|{{{z|{{{{|{{{||{|{{{|{{{z{||{||{|{{{z|z{z{||{||||{{z{{{{{{||||}{|{|z{{zz{{||{|{{|{{{zz{z{|{|||||{{|{{{{zz{zz{||{{{{z{{{zz|{{{}|z{{{|{{{{{{{{||||{||||{{{{|||{|||{{{{{{{{{|{||{|||z{{z{{{}||{|||{|||{|z{{{|||{|{|{||{|{|{{|||{||||z{||zz{||{|{|||{{{{{{||{|}||}}||{|{{{{{|{|{|}}||{{{|{{{|||}{{|||{z|{{{||}}|{}}||{{{{}||{}|}|}}||||{{||||}|||}}}}|{||{{{}}}||{}}|{{||||}|}|||||}}{{|{{||||}}|||||{|||||{|}||||||}{{|{{|{|||}{|||{{|{{|{{{{|}}~~~}}~~}}}~~}}}|}|}||~}|}{}|}{||{|{z||}|||{|{|{{|z{{{{||z||{{{|zzz{{}{z|{|{||z{{{{{z{|{{{||{{z{{{{{{{z||{{{{{{{{{zzz|{z{z{{{{x{{{yzz{{{{|{|{{{z{z{{zz{{{|{{|{{{{{z{{{||{{|||{{{{z{zzz|{z||{}|{zz{zzzz|{{||||zz|{|zzy{||{{|}|{{z{|{{{|{|{||||{{{{{{{{|{{{|||{{z|{|||{|{{||||||z{{{y{{{}|{|}||z{{{{|{z{|||{||{{{||{z{||{{{||||{{{{{{{z||}}||||{{{|||{|||||||||{{|z{{||||{}|||||{{{{{{z|||||{||||z|{{|||||{}~|||||}||{{|}|||||}|{}|{{{{}|}{}}||}|||||{|{{|||{|}}|{||{|}{}|}}|}}|{{|{{|{||||||}|}|{{|{{||}|}|||||{||{{z|||}{|~~~~~}|~~}}}||~}||}|||}}~}||}|{{|{|||{|||||{{{|{{{{|{||||}{{|{z{{{|{{|{|||zz{{z{{z{{{{{{|{{z{{{||||{{{{{{|zzz{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{{{{{{{|}|{|{|zz{z{{{z||||z|}||{z{z|z{{|{|{|||{{|{z{zz||{|{|{{{{{{zz{{{||z{{|{{z{{{z{{{||{||{|{|{z{{z{z{||||||{{z{z{{{||{{{||||{{z{{|{z{{{|{|{zy|{{{{zz|{{}|{|{{{{{z{{||{{{{|~{{||zz{{z||{||||{|{|{{|z{{|{{|}~||{|{z||{|||||||{{z{{{{{||||||}|{|{|{z{{|{}{|}||{{|{|{z|{||}{}{}}{|{{|{{}}{|||}}|{||{{|{{||||}|||||{{{|||}|{||}|{||||}|||||||}|}}{|{{||{|}}||}~}|z|{{|||||}}}}||{||{|}|{|{|}||}}||{|{{||||||}|}}|z|{{|{|||}|||}}||{|{|{{{|}}|}}|{{{|{|{z||}||~~}~~}~~}|~~~|}}|||~}{|}}|}||{||||{{}|}|}|||||{{zz{{|{|}{||||{|{{z|{||{|{|{||{{z{{{{z|z||||{{{{{{|{{{{|{{{|{{z{zz{|z{{|{|z||{zz{{{zz{{|{{|{|{{{{{z{|{z}{z{|{z{{{zzzz||||{||{{{{{{{{|{{||{{{|{{|y{{{z||{{{|||{{{{{|{{|{{|{{||{{{{{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{z|{{||{||{|{z{{|{{{|{|||}{||z{z{{|{||{{||{{z{z{{z{|{{|{|{{|{z|{|z{|{|{|||{{{{|{{{{|||{||{{{z{{{z{{}{{{||||||||{{{|||||}}}|{{{{|{{|{{}||{}|{{{|{{{{}}}}|{{|{||||{{||||{|}{||{{{||{|{|}}}}|}|||z}|{|}}|}}|}||{|{|{|}||}}}|}|{||||{|}|{|}||}}|{{{|{}{}}||}}}|||{{{|{|{|||}}}|z||{{{|||||}~|||{{{{{{{{}||{~~}}~~~~}}~}}}~}}{|{|{{~~|||}}{|{}{||{{|||{|||||{{z|zz{{|{{z|||||zzyy|z||{{{|{{z{{y{{{{{{{z{{{{{|{z{z{{{{|{{{{|{z{y{{zz{z{|{|{{{{{zz{{{{|{{{{|{{z{{z{z{{{z{|{}{{z{|z{z{z{{|{{||{zz{{z{z{{z{{{{{{zzzz{{z{{{{{|{|z{z{{{{{|||{|{||{{|{|||{}{{|{|||{{z{zzz{{|{|||z|z|{{{z{z{}{|{|{|{{{zzz{z{{|z{||{|{|{z{|{|{{{{{|{||{{{{{{|{{{z||}|{}{{|{{|{||}||{z{{|{{{z{|{|~||}{|zz{z{{|{|||{{|{{{z{{||}}{||||||{{{|}{{|||||}||{{{{{}{||}|||}}|{|||{|{|||||{||}}{|{z{|||{||{|||||{||{{z||||{|}|||{{|{|{|||{|{}|||{{|z{{||}|}{|}~{|{|z|{|{|||~~}~}}}}}~~}}}|}{||{|{|}}|{}~}}{{z|{{{{|||{|}||{{{|{z{{{{{|{|{|{|{zz{{{|{||{||{{{{zz{{{{{{{{|{|{{zz{z{z{{|{{{{{{|z{{{zz|z{|||{|{{{{zz{y{{{{|||{{yz{{{zz{{||||{|{z{{z{{z{|{|{{|}{{{zzzz{|{|zz{{{|zzzz{{z{{{{|{{|zz{{z{z{{|{|{|{|{{|{|zzz{|{|{{{{zz{{{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{y{{|{{||}{{{|{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{zzz{{{{{||{|{|{{z{zz{||||||{|z{{{{{{|{{{z}||{{{z{{{{{|{{{{||{{|z||{z{{{|{{|{|z{{{{z{|{{|||||{{{{zz{{{{{||||}{{||{z|{|||||||||{{{{{{{{||{||||{{{{z{{||||{|{|}||{|{{{{|{{{z|}{|{|{|{{}}|}{|||}{}{{|{|z}||{|||||{{|{{{|||||}}|||{|{|{{|{}|||}|}{{{|{{||z}|{||||{|{|||{||}}||}}|{||}||{{}||}|||{|{{|{{{||||||}}}}|{{}{{{|}}}||||}||{|{|{{|}{||}}{|||||||||}|||}||||{|{{{|}|}}~~~}|~}|~}~}}}}|}~|}|||z{{}|}}|||||||{z{{{||{{||}{|{z|z{{{|||{{z||{{|zzz{z{|||{{||{{{{{{z{{|{{z|||{{{|{{zz{{|zz{z|z{zzzzzz{{{{{||{zz{{{{{{z{|{{|{{{{{|z{z{{{|{||{{{{|{z{{y|{{|{{|{{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|||}||||{{{{{{{{{{|||}~~~~}}}}}}~}}}~}|~|{}|}z|}|||}|}}{|{{|{{|{{||}}|{|z{{{{{|{{}|{}{{{|{{z{z{|||{|{|{{{{||{{{|{|z||{{|{{z|z{{{{z{{|||{{z{{z{{{{||{|{zz|{{{{{{z{|z{}{|z{{zzzz|{{||{|||z|{z{{{{|{||||{{{{{{{zz{|{{{|{{z{|{|zzz{|{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{{zzz{{{{{{{{||z{z{{z{{{||{{|}{z{{{{{{{{{{{{||{{{z{{{z|{|{{}|{{{{{z{yz|{{{{{||{|{{{z{z{{{{{|{{z{zz{zzz{|{{{|||{|z{{{{z{{|{{||{{{{{{{z{{{|{|{{{{z{{{z{{{{{{||}||{{{z|{{|||{|{|{{{|{|{|{{|}|{|{|{{|{{zz{||{}||||{{{z|{|{|}{||}{|}{{z{{{z|||||{|{{{|||||{||{|{|}||{||{{{{||||||||{z|{{|{|}|}||}||{z{{{||}{}|||}||}||{||{{|}}|{|~}}{||||||||}||}|||{|||{|||||{}|}}||{{||{|}||}|}}{||{z{{{}{||{{|}|||zz{|{|{||}||}{{{{||z{|}|||{~~~|}||}}|~~~}}}~|||{{||}{|}||{}|}z|{{{}|{{||{}}|||{{{{|{{{||{||{||{z{{{z{||||||||z{{{z{{{{||z{|{z|{{{zz{{{{|{{|{{|{{z{{{{{|z{|{zzz{{zzy{z{{{|{{|{{z{{z{zz{{{|{|{|{{{{z{z{z{z{{{|||z{{|z{zz|{{z|{|{{{zz{zz||{|{{|{{{{{{{{z{{||{|{{|{{z{zz{{||{{z||{{|{z{{{{{{{{{{}{{{{{z|{{{|||{|{{{{{|{z{{|||{||{{z{|{|{{{|}{{|}{{{z{|{{{||{{|{}|{{|{{z{|||||||}||{{{{{}|||}}|{|||{{{|||||||{|||||{||{{{{||||||}}|{{{{{}{{}|{|}}}}{{{{}{}|}||||~}|||||||{}||}{|||||{{{|{||{{{}||}|}{{|||{}{|}|~||{{{{z||z|{||{||}{||{zz|{|{}|{}||{||{|{{||}|{|~~~|}|}}}}}}|}~}}|}}}{|}{|||}|}||||||{{||{{||{{}|||{|z{{{z|||||{||{{|{{{{z{||||||}{{z{{{{{{{{{{||{{z{{{{{y{|{{{{{|{z{{{{z{|zz{{|{|{z{zz{{z{{{{||{|{zz{z|zzz||{{||{{{{{z{{{{{{|{|{|{z{{{{{{z{{{|{{{{{{zz{z{{|{{{|{{|z{{|{|z|{|||{{{|{zzz{{||{{||{{||{{z{{|{{{{{z{||z{|{{z{z|}|{}}|}|{z{|z{{{{||{||||{|{{|{{|{|{{||{|{{zz|{||{||{{|{{{{{||z{||{}{|||||{{{|||}{{||}{}|{|{{|zz{{}}}}}{|{{|||{||||}}|{}{{|{{|||{|}||}||}|{{{{{||}}}}|}||{{|{{}{{}|}|}}}|z{{{||{|{}}|{||{{{|||{|}||}}|~||{{{{z{z{|||{|}}|{{{|||{|}|||{||{z|{{z|||||||}~~~}}}||}|}|}}}}}~||||{|{{|}}}}||}|{{{|{|{{{}|||||{{|{{{{|}{{|||{|{{zz{|{{|{{|{{{}|{{{y{{z{{|{{{{|||z{zzz{z{}{{|z{{z{z{{{z|{{{{{|{z{zzzzzz{{||z{|z{{{z|z{{{{|{|{|{{{|zzzz{{|{{{{{||z{|{zzz|{{{||||zz|z|{zz{}{{|}|{{zz{|z{z{{||{{|{|{|{|z{{{|{{|{||{z|z||{z|z|{||{|{{{{{{{{|{||{|}|{z|z|{{{{|{{{|z||{{{{{{z|{|{{||{{{{|{{zz||{{{|{{{|{|{{{{}|||{|||{||{|z{{{}|}|}}}{{{{|z{||{||}}|||{{|{{|z{}|||{||||{{|{|{{|||{{}}{|{|||{|{||}|{|||{||{{||}||||||||||{|{||}|{|||}}{|||}|}||||||||}z||{{{|{|{||||||}||}|{|z|||{}}||||||{{{z}{|{{~}}}}}~}}|~~}}}}|||||{{{|{|||||}{{||{{{{{{{|{||{|{{{{{{z{{{|||{|{{{{{{{z{z{|{{{||{{{{zzzz{{|||z||{{{{{{{zz{{{{|{{{{{{{{{{{{{{y{||{zz{{{zz|{{{{{{{z{{zzz{y{{{|{|{||z{{{{zzz{{{{{{{|{{zz{zz{{{}{{{}{{{zyz{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{{{yz{z{{||{{{|{z{z{zz{{{{{{|{{{zzz{zz{{{{z|{{{{zzz{zz{{{{{z{||z{{zzz{{{{{{{{{|zzzz{zz{z|{{{{{{zz{{z{zz{{{||{||{{yz{z{z{{{y{{z{z{{z{zzzz{{{{{{|zy{{{{zyz|{|{{{|{{{z{{{{z|{{z{{|{zz|z{{{{z{{{{{{{z{zz{z{|{{{|{{{{{zzzz{z{||{{{{|{{|z{{{{{{|{{zz{|{z{|{{|{|{{{{|{{{z||z{{{{{}||{|z{|{{zz{||||||||{{{|{{z{{|||{||{|z{{{{{{||||||{{|{{{{||||{{{|||}||||z{{z||||}|||}|{{{z{|}{|||{}{{{z{||{{{|{||}{|{||{||{||}{||||}||{|{||{{||||}}|{{{{{{{{z|{||{|{{{{|{{{||||{||~~}~|}||{}}}|||}||||{|{{{|{|||{|||||z{{{{z{{{|{}|{{|z|z{{{|{{{{|||{zzz{zz|{{|{|{|zz{z{z{z{{|{||{{{{{{z{z{||{{{|{{z{{z{{z{|{{}|{{{{z|{zzzz{{{z{{|{{{{yy{z{|{{z{{|z|{{{zz{{{{{{{{||{z{{{zzz{z{z{{{{{zz{{{{yz|z{{|{{{z|{z{zz{{|{||||{{zz{z{z{{{||{||{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{{||||{zz{z{z{z{{{{||{{{{{z{{z{{|z|{{|{{{z{|z{|zz{|{||{z{{zz{z{{|{||||{{{{zzzz{z{{z{||{zzy{{{{z{{{|{||{zz{{{{zzzz{{{{|{z{{{zy{{|{|z|{{z{z{{zzz{{{{{||{{{{{yzz{{{{{{{||{{{{zzz{|{{{{{{|z{{zz{{{{{||||||{z||{{{z||}|{{|||||{{{{z{|{|{|{{{{z{{{z{||{{{|{|{|{{{{{{{{||{||||{|{{||{}{}{}}|}|{{|{{{z||||{|||{{{{|{{{|||{|||~{{|{z|||}{|}|||||{||{{{{{|{|||}|||{|{{{z|||||{|||{z{{|{z{||}||}|{|{||{||{|{|||||||{{{{{{|{||{|}|{|z|{||{||{{|{||{{|{{{{{|{|||~|~|}|||}}|{}~|}}}}||{{{{||{||{}|||||{{{{{{|||||{||||{|{{{{z{|{|{|{{{{z{z|{{{{{||{{{{{zz||{{{{|{{|{{z{|z{zz|{{{z{{{|z{zz{{z{{{{|{|{{yzzz{zzz|{{|{{{|zz{z{{z{{{|{|||z{zzzz{y{{{||{{{|z{{{zzyz{{z{z{{zzz|zyzzz{{{{|{|zz{z{{z{zz{{{{|{zzzz{z{{|||{{{|{{{zzz{{{zz{{{|{{z{{{z{z{{{|}{{|z|{{{{{zy{|||{|{|{{z{{{{{{||{{{||{{{{|{{{||}z{{|{{{{z{{{{{|{|||||{|||z|{z||{{{||}|{{z{{{{{|{{}|||}{{{{z{{|}||}|{||{{{|||}||||}||}}{||{{{{{|||}|}|{{|||{{{{}|||||||{{{|{{|{|||||~{||{||{z{}|||{|{}{{{z{{{|{{{||||}|{{{{{{z||}}{|}{{{{{{{{{||{|{~}}}}|||{}|}|}|}{}}{|||||||||}{||}}{{{{z{|||{{}{|||{{{{|{{{||||{{||||{{{{zz|{{{{{|~|z{z{{zz{{{|{|||{{{{{{zz{{|z{z|{{z{zz|z{|{{{{{{{|zz{{zzzz{{|{{|{{{{{|zzz{{|{|{}|{{z|{{z{{|{{{{|{|zz{z{{zz{{z{|{|{{zzzzzz{{{{{|||{z{{{|{{{|z||||{|{{{{z|{|||{{|{{{{{z{{{{z{{|z{||{y{{{z{z{{{{|{||||{|{{{{{|{|||{y}z{|||{z|z||{||{{{{||z{{|}|||}|||{|{{z{||{|||~|||{|{{|{{{|||||}|||{{|{{|||{|{||||z{{||{{|||{|||||{|{{|{||||{{||||||{{|{{|}|{|}}|}{{|{{{|}|||||||}{|{{{|{|{|{||}}||{|||{{|{{}|}|}|{{{{{{|{}|}{||~{|{{{||{{||{|||||||{{||z{{{||~}}}||||}{{{}}||}}|}|{|{|{{||||||||||{z{z{{{|{|}}||zzzz{{{{|{|z{|||{{{{{{{{||{{{|{z{{z{{{z{{{{{{|{|{z{{zz{z{{{|{{|{{z|zzzzz{{|{{{{{{z{{{{zz{|{{{{|{{{zzzyz{|z{{{{{|{z{zz{{z{|{{|{|{{yz{{{|z{{{{{{{z||{z{z{z{|{{{|{z{{{{z|{z{{{{{|{{{z{{|zz||{{{{{{|{{{{z{{{{{{{{{|||{z{{|zzz{z{|{||{{{{{z{zz{||{|{|{z{{z{zz{{||{||{|{{|{{||{{|{|||{|{z|{{{{||||||{|{z|zz{|{||{|||{|{z|{{{{{|||{{||{|z{{{{{{||||{||}{{{z{{|{|||||||||{{{{|||||||||||}{{||{{||}||{}|{|{|{{|{|||{|||}}|||{{{z||||||{||{z{{{{{{{z||||}|}{{{|{|{|{}|{{|||{|{{z{{|{{|{}|||}{{{|{}|}{|||}}|{z||{{|{|||}|}|||{z|{|{|{{{|{|{{{|z{z{|{}{{{|{|{{{{{z{z{{|{{|z|z{{zzz|zz|z{{|{{z|{z{{zz{{|{{{{{{zzz{zz{{{|{{{{{{{zz{z{{{{{|z{{{z{{{z{zz{{{{||{{{{yzzz{y{{{|{||z{{z{zz{{zz{z|{{z{zz{{{z{{z{{z}{{zzzz{{{z{{{|{{{{{{{z{zz{{{{{{{{|z{zzzz|{{{{{{{{|{{z{{{zz{|{|{{|{{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{||||{{|||{{zzz{z{{}|{||{zz{{|z{|{|{{{||{{{{{{z{z{{||{||{{z|zz{{{{{{{{||{z{{z{{zz{{{|{||{z{{{z{z{{{|{|||||zz{{{zy{{{{||||{z{{|zzz{{{{{|{{{{{{z{zzz|{z||||{z{{{zzz|{|{{||{|{{{zzz{{{{||{|||{z{zz{{|{{{{|||{{{{{{|{{{{|||}|{{{{{z{|{}{||{|||{{{|{{|{{{{|}}{|{z||z{{||{{|||||{{{{||{{||}||||{{{{{{}|{||||||||{{{{{{{|||{|{{}{||{{{|{||||}||||{|{|||{{|}|{||{|{{z{{{{{~||}||||||{{{{{|||||||||||{{{{||{}||{||||||{{{|||{{|{|}|{|{{{{|{||{|}|}||{{{||z|||}{{~|{z|{{{{{|{||{}}}}{|||{|{||}|}|}||||{{{{|||{|||||{|{{|{|{{{|||{||{{{{z{{z{{||{}{{{z{{{|{z{||{{{z{{{{zzzz{z{{{{|{{{{{|{zz{|{|{{||||z{z{{z{|{{{{{|z{{zz{{{{{{{{z{||{{z{z{zz{{|{|{||z{|z{{zzz|z||{{{{z{z{{zzz{{||{|{zz{z{{zzz{|{||{|z{{{{z{{{|z{{z|||zz{{{{{{|{|{{||{zz{|{{{|{{{{{{|zz{|{{{{|||||{||{z|{zz{z{{}{}}{{{{z{{{z{|{|{{{|||zz{{{z{|}|z{{|||{{||{{{{||||}|||{z{|{|{||{{{}||{|{|{{{{{}|{||||z{{z}z{{|||||||{{|{{|{|||}|||{|||{{||{{}||||}||}|{|{{{|{|||}}|}||z{|{{{{{||||||||||{|{||{||}|||}|{{{{|{||||{|}|}|{{{{|{{z||}||||{|{z{|{{||||{}}||{{||||{|}|{||}||||{{z{|z|||{|||{||{z||{{{{|||{|}{z{{{zz{|{{{{{{{z|{{{zz|{{|{|{{{{z{{{zz{{z{{{{|{{z|{{zz{{{{z{{{{{{zz{zy{zz|{{||zz{z{z{z{||{z|{{z{z{z{z{{|{{{|{{{{{zy|yyy|{|{{{{{zz{zzz{{z{zz{z|zz{zy{{{z{{z{|{{zz{{z{zz|{{||{||{{{{zz{z{{{{{{|{{z|{{z{{{{{|{|{|zz{{{{{{|{{{{{{|z{{z{z{z{|{|||}{{{zz{{z{{|{|z{|z|z{{{{z{||{{z}|z{{{{zz|{{|||{|}|{z{{{{|||}{|{{}||{{{{z{z{{|{|{}{|{{{|{|z||{|}|||{||{z|{||{{|{||||{{{{||||~{|||||||{{{{{||{}|{||}{|{|{{{||{|{||}|}|{{{{{|||||||||{|{{{|{|{|{|{|||{{{{{|{{|||||{{{{{|z{{{{|{||||}|{}||{||z||}|||||{|{{||{{||{{|}|||{z{{{{{|{{|{{||{zzz{z{z{|z{z{|{z{zz{y{z{|{{z{{|z{{z{{zz{{z{{{{z{{{zzz{y{{{{z|{|{{{zz{zzz{{{{{|z{{{z{zz{{{|{{{||{zyzz{zz{|{{||{|{{{zzzz{{{{{zz|{{zzzzzzy{z|zz|z{|z{{{{zzz{{zz{{|{z{zz{{z|{{{{{|||z|{zz{z{{{{{{|{|{{z{{{z{{{{{|||z{{zz{{z||{zzz{|{z{{{z{z{|{|{{|{{z|{{z{{{|{|{||{||zz{{z{{|}|{|{||{{{z|{{{|}|{||}{|{||{{{{||}|}||{z{{{{z{|{{{{|||||{{{{{{|||}||}{{{{|{{{z|{|{|||{|{{{{{{|{}|}|{|}{zz|{{{{}|||{||||{z|{|{{|||{|}|}||{|||{||{|{|||}{zzz{{{{|||{|||}|{{{z{||||{|{{|{|{||{{z{{|{|{}|||||{{||{|}|{|}|}|{{{|{||{{{|{|}||z|zzy{{|{{{||||{{z{z{z|{{|{{||{{|{zz{{zz|{||{{|z{{{yz{{{{{{{{{{z{{{{|{z{|{{|||{y{{zz{zz{{{{{{{{{z{{{{z{{|{{{z||{{z|{z{z|z||{z{{{{{zzzz{z{{{{|||{zz{z{z{{|{z{{|z{{z{z{{|z|z|{|{{zz{zz{{z{{||{{||{{{{zzz{z|{{{{{|{||{{{{z{zz|{{|{{{{z{z|{|||{||||{z{z|{|{{{|{|{|{{z|{{{z{{||{{|{z{zz|z{{{{|{|||{{{{{{|{|{|}|||}||{{{|{{{{||{|||{}{{{{{{{{||||||}{|{{{|{{{}||{|{|}|{|{|{|{||{||||{{{{{{|z{{{||||}|||||{{||{{|{}}{||{{{{{{|{||}||}}{{}{{{{|||}|}}||{|z{|{{{{||}{||}|||{z{{|||{|||||{||z{{{{{|||||~~}||{{{{{{}}|{}}~||||{{{{|||{|||}|{{|{{|{|{|{{|}||{||{{{{{|z|{{||{{|{|z{z||{|{{{{{z{z{{{{|{{zz||{{{{z{z{{{||{{{{{|{zzz|z{{{|{{|||z|zzz{{{{|{{{z{{|{{{zy{{{z}y||{{{{{{z|z{|{{|{|||{{z{zz|zz{{{|{{{{{{zzz{{{|{{}||{{{{{{|{z|{||||{{{{{{zz|{{|{|{{||{z|z{{{{{{||||{}zzz|z{{z||{|{{}{{z{|z{zz{|{|||{|z{zz|z{z{||{{|}{|{{{{{{{|{||z}||||z{|z{{{||||{||{{{|||}{|{}{|||||{{{{{{{|||{}|~{|{|{|{|{||}|||||{{|{{||{{||||}|||{|{||{|{||}|||}|{|{|{{{{}|||||||{|{{{{|||{|}}|}}|{|}|{{|{}{}}|||{{{{{{{|||{{|}}|{{{|{||{|||||||{|{{{{|{|||{|~|~}|{||{|{{}}|}|}{{|{|z{{{{|||{||}{{{{{zzz||||||||{{|z{{y{{|||{{|||{{{zzz{{{||{|||{y|z{z|z{|{{||{{{{z{zzz{{{{{{{{z{zzz{zz{{{{{{{{{{zz{{{z{{||{z||{z{y{z{z{|||{{|{{{{{{z{zz{{z{{z||{z{{z{{{z{{{{{{{zzzzzz{z{|{{{{{|z{{{{zz{z{{{{{{{|{{z{{{{||{{||{||z|{{zz{|{{||||{{{{z{{{{{{{{{|}||{{|zz{{|{|||||{z{{{zzzz|{|{z|}|{{z||{z{{|||{{||{|{{{{{{|{||}{}|{{{{|{{{||||{||||{{||{z{|{||}|||{{{{|{{{|}{||}}{{{|z{}{{|{{||}}|{||||{|||}|}||}||{|}|{{|||||{|}||z{{||{{|||||||||z{{||{|}||}}{}||||{|{z{{|{}||}|||{{{|{{|||||||{{{{{{{{{|{}{|}}|}|{{||{|}|{|{|}|}||{{z|{{||{{|||||{{{{{z|{{|||}|{{{{{{{z{||||||{{|{zzz{z{{|{{{{{{{{{{{{z{||{{|{{{z{{|z{z{{{{|{{{{||z{{{{z{{{{|{{zz{{{z{{{{{{{{|{z{{zz{zz{||{{{{|zz|{z{zz{z{{{{||{{zzz{{z{{{{{{|z{{z|z{{{zzz{{}|{{{{{{{{z{|{{||||{z{|{{{|{{{{{|||zz|{{z{{{{||||{|z{{zz{{z{}|{{{{||{{{{z{|{|{{|}||{z{z{{z{{||{{|}{{z{|{{z|{|||{{}{{{|{|{|{{|||{|||{{}{|{{{||{|{}|||{z{{{{z{||||||{|z{{{{|{{||{|{|{|{{{{|{{}|||}||}|{||{{|{{}|}||}||||{{|||}||{}{|||{{{y{{{{|{|{|}}{|{|z|{{||||}}}|||{{{{|{|{{{|{|||z{{{{{{|||||||}{{}|{z{{}||{|}}||z|{|{z{|||||}}|}|{{{{{{|||||{{|{{{{{|{{{|{{||||{{{{zzzz{{||{{|{{z{{{{{z|zz|||{{{{{z{{{z||{|z||{{{{{z{y{{z{z{{{{|z{zzz{z|{|{|{|{{zzzzz{z{{{||||{{{{zz{z{zz{{{|||z{{|zzzz|{z{z{|z{z{{zz{{z{{{{{{{|{zzzz{zz|{{{|{|{z{{z{zy|{{{{{|{{{{z{{|z{||{||{|{{{{{{{{|{{|{|}|z{{zzz{z{|{|{|{||zz{{zz{{|{|||{||{{z{zzz{{||{{|{||{{{z{z{{{{{}{|{{{|{{{{{||||||{{{{{{||{{|{|||||{{||{{z{|||{||||}{zz{{{zz}{|{|}||{{|{|||{||{{}{||{z|{{{|{}|}||||}|{|{{{{|||}{{|}|{{||{{{||||}|}}{{{|||{z{{{|{|}}||{{{|{z{|||||}||{||{{|{{{||{||||{{|{|{zz|{{{}||{||{{{{{|}}||}}|{{{{{{{{|||||||}|zz{{{zz||{||{|||z{{zzz{|{|{{{||{{|zzz{z{|{{|{{{{{zzzz|z{{{{{|{|{{z{{zzz{|{z{{|{{zzzyzz{{{|{{||{zz{z{zzz{|{{{{|zzz{zz{zz|||{{{{{{z{zz{{zz|{{{{|{{{z{|{zz{{|z{{|{{z{{{{{zz|z|{{|{yzzz{{{z{|{{{|{||{{{zzz{{|{|||{{{{{{z{{{{{|{|{{|{zzz|{{|{{|{||||{{{{{z|{|{|{{|{{{{{{z{zz{|||{||{|{z{{{{z|||||}||{{{|{{zz||||||}|{{{{{{{||||{}{||{z{{{{zzz||}|{||}{{z|{z{|{|}|||||{|{{{{{}||||}}{|{{||{z{|||}z||}|{{|{z{{}|||{||}|z||{|{{{||}|}||||{||{z|}|{|{||}||{{{{{||{|{}}||||{|{{{{|||||||{|{|zz{{{{|||||||||{||{{{|||{|}}{zz{{{z{{{|{|{|||{z{{{{zz{{{z{|||{|{{{|{{{z||z{{|{{zzz{{z{{{||{{{zz{{z{z{z|{{{{{||zzz{{z{z{{{z{|{{{{zzzz{|{z{z|{zzzz{zy{zz{{{{{{{{{zzzzz{{z{{|{|{{{{z{|{{{z{z{{|{{z|{{z{{z{{zz{{z|{{z{z{{{{{{{{{{z{{z{zyz{{{{|{|{{{yz{{|z{{z{{{||z{{{{z{{{{|{|{{{{{{{yzzz{|{|{|{|{zz{{{{{|{{|{||||{{z{z{z|{{|{||{{{z{{zz{|||{{{{|{zzz|||z{{{|||{}{|{{{{{{{|||{||{z{{{{{{|z{|||||{|{{{{{|{|{|{|{|||{|{{{|{{|||{||||{{{z|{{||{||||}||{}{||||{||{}|||{|z|{z||{||||||||z{|{{|||{|||||{|{{{{{{|z|{||||||{{{|zz{}||{|||||{{z{{{{{||{}||{|||{|{{z|{{z|||{|{|{{{{{||{}{{|{|{z|{zz||{|{||{|z{y{zzz{{{{{z|{{zzzzz{z{{{{{|{|zz{{zzz{{|{{{{|z{zzz{yzz{{{zz{{z{zzzz{zz{z{zz{{{{zzzzzzy{||{{{|{z{z{{zzz{|{{{{{|zy{{zzzz{|z{{|||zzzzzzyzz{{zz{{|z{z{{z{{{{{yz{{|{{{zz{{z{|{{{{{|{{{{{zz{{||{z{|z{{{{zz{{{|{z{{|{{z{{z{zz{|{{{{||{z{zyz|z{{{{{|||{{z{zz{{{{||{||{{{{{{{{zz{|{{||{zz{{{{{|{{||||||{{{z{{z|||{{{||}{{{{|{{z{||{||||{{{{|{{{|||{||}|{{{z{|{{{||||||}|{{{z||{{}|||||}|{|{{|{||||||{}~|z{|{{{|||{{||||{{{{|{{{{{|||}|{|||z|{{z{{|||||{||{{{z||{|||{||{}z{{{{{z}{|{||}}||{|{|{|{|||z||}{{{|{|{{|}}||{{||{z{{{z{{|{{{|{|{{zz{z{{{z||z{||{zzzzz{{{{{{z|||zz{{{{{{||{{{||{{{zz{{{z{{{z{{{{zzzz{{z{|{{{{|{{z{zzyz{{z{{z{|{{{{{zz{z{{||{z|{|{{{y{z{z{|||{||{z{{zz{{z{{{{{|{|{|{z{{zz{|{|{|{{{z{{{zz{z|{{z{|{{z{{{{{{|{|zz{|{zz|{zz{{zz|{{|{{zz{{zzz{{{{{|{{|{{{z{{{{||z|{|||{{||{{{z|}||{||||{zz{z|{{{|{{|{{|{{{|{|{{{||{|}|{|||{||{{{{||}}}|{||{z{|||{|{|{||{{{|{|{|}{|||}||{{{||{|||||}|}}||z{{|{{|||||{|}{{|{{z{||{||}}|}|{||{||{|||||{||{|z|||{|}||}||}}{||z|{z||}|||}}{||{{zz{{}|{||||||{{z{|{||{||{}||{|||{||{|}||}|||{||{z{{{|}}{|}||{{z{zz{{{|||}||{{{{z{zz{{||{|{|}{{{z{{{{||||{|{|{{{{{z{zz|{{{{|{{z{{{z{{{{|{{}|{|z{z{{zz|{{{{zy|{z{{{zz{z|{{{{|{|z{z{z{z{{|{{{{{{{zzz{zz{z{{z{{z||zzzzzz{{|{{|{{{{zzzz{z{{{{{|}|{zz{{{{zz{{{{|{|{{{{{{{z{{{z{{|{{{{z{{{z{{||z{|||{{zzz{z{|{|{|{{z{{z{{{{{|{|{|||z{{{z{{||{{|{{|||{{|{z{|{}||{|{|{||{{{|{|||||{}}{||{{{}||{|}{|}||{{{{{{||||||{}||{{{|{{{|||}|||||{|{{{|||}{}||}||{{{{||{|}|}||}{|||{|{||||}||||||{{||||{|{|}}|}{}{{{{{|{|||}{}|}{|{z{z{{||{||{|}||||||}|{}|}|||||{{{|{{{|||}{|}|{|{{{{{z||}|||}}|||z|{{{{{{{|||||{{z{z|{{|{{|||{{z{{{zz|{||}{||{{{|{z{z{{{{{{||||{{z{{|yz{{|||||{{{{{z{z{{{{{{|{z|{{z{zz{|{{z|{zzz{{zz|z{{{|{|}{{z{{z{z{{z|{|{||{z{{z{zz{{{{z{{{{z{{z{zz{{{|z{z|{zz{{zz{{|{{{{{{{{z{{|{zz{{{{|{{{z{{{{{{z{{{z{{|z{zzzyzz{{{{{||}{{{{{{zz|{{{||||{z|{{{zz{{||{{{{||{{{{z{{|{{|{|{|z{{{|{{|{{z{|}|{|{{z{{{||||}|}|{|{{{|{{{}|||}|||{{|{z{z{||}||{{|{{{{{|z|||||}|{|{{{z{zz{||||||||{{{{{{{|{||{||}{{{{{|}|||||{||||{|||{{||||||||||{{{|{{|{|||||||}|{{{{{{|}{|{}|}{{|{{{{{|}|}|{||{|{z|{{{}{}{{|||||z{||zz}|}||{|}{{zzz{{{|{|{|||{||{z{{zz|}{{{{|{|{{{z{z|{||zzz{{z||zz{{zz|||{{||zzzyzz{z{|{{{{{{zz{{zz{z|{|z{|{|{z{zz{z{{z{{|{{{z{zzz{zzz|{{|{|{{zz{{{z{{{||{{{{{z{{z{{zz{{{{||{{zzz{{zzzz{{{{z|{z{{zzzy{{z{{{{|yz{zz{{z{{{|z{|{{{{{|{|z{{{{|{|{{zzz{{z{{||||{{|zy{z{{{{{|{{{{|{|{{|zy{{{{{{{|{|{{{|{{z{|{{{||||{y{z{{{{|{||{||}|{{{z|{{}|||||||{|{{|{{{||||||||||{{{z{{}|||}||{|z{{{{{z{}}|{|}{||{{{|{{{||{|||||{|||{{{|}{|||}||z{||{||||{||||{|{{z|{z|{||}|||||{|{|z{{|{||{|}}{}{y{{|{{{}{||}|{{{{{{z{z|||{|||{{{{{z{|{{||{|{|||{|{|{{||||||}}||z{{z{{||z|||{}{{z{{{{{{|{}{|{||{{{{zzz{{||{{}{|{{zzzzz|{||{|{}{z{{z{{{{{|{{|{{{{{z{{{z{||zz||{z{{zzz{{{{{{{|||zz{{{{{{y|{|{{||{|{z{{{{{{|{|z{{{z{{zz|z{{{{{|||{{{{z{{{||{{{|z{{{z{|zz{{{z|{||{{{z{{{z{{{|}z{{|zz{z{{{{z|||{||{{z{{|{zz{{{{||||{{{{{{{z{{|{{||||z{{{{{{|{{{}{|||{{{{zz{||{{{{|{{z{{{{{z||{||{|{{{{|||||||}||||||{|{{|{{|||}||||||{||{|{||{|}|}|{{{{{{z{|}{|}|}|{{{{{}||}||{||}~|z{|{||{{|||}|}|}{||{{{|{|}|{|}|||||{|{{{}|{|||}}|z{|{{{||{|{|{||||{|{|{||||||~||||{{{{{}}||{{|{|{{{{||{|||{||||{{{|{{{{|||{{{}}{|{{{z{z{{|{|{}|||{{{|{z{|{{|{|||{{{{zz{{{||z||{|{{{zzzy{{{{{z||{z{{{{{zz{|{{{|z{{{|z{z{{{|z{|||zz|zy|zz{{|{{{{|{{{{z{zz{z{{{|{{{{{{yz{{|{{{{{{{|z|{zz{{{{{|{{{}{{z{{{zzz{{{{|{|{{z{zzz{{{zz{|{|{{{{{zzz||{{z||||zz{{z{z{||{{}{|{{z|{z{yz{{{z|||zz{{z{{{|z}z{||}{y|z{z{z{|{|{|{{z{{{{|z{z{|{{{|}{z{{|{{{{{|{{{|||{{||z{z|{{{||{|{|{z{{|||{|{|||||{{{{zz{{{|{}|}{|{zz{{z{|||||||}|{{{|{{z|||||||||||{{{{{||||||}||{|z{{|{{||}{||||{{{{{|{{{|{|}}}||{{{{{{||z|{|}}{{{{{{{{||{||||}||{{z{{z{|||||||{{{{{{{z{{}||}{{{{|{z{zz{||{|{}|{{z{zzz{{{|{{}||{|z{|{z{|{|{|{|{}{{{{z{{||{{{|{{{{z{zz{z{{|{{|||{y{{{z{z{|{{{{|{|{{|zzz{||{{{{{|{zz{z{z{{{{{{|{|{z{z{zz{{|z{{|{{{z|{z{z{|{|z|{{{z|{z{zzzz{{{{{{|{{zz{zzzzz{z{|{{|{{yzz{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|{|||{{||z{{{zzz{||{|~||{{{zz{z{{{{{{{|||z{z{{{z{{{{{{|{|z{z{zzz|{{{z|}|{{z{zz{z|{{{{|{{z{zz{{zy|{|{{|{z{{{{zzzz|{|z{{{|{{zz{{zz{{{|z|z|zzzz{z{{{{z|zz|{{{{y{{y{{{||||||{{z{{z{z{{{|{{{{{{zz{z{zyz{zzz{zzzz{zzzzz{{{{|{{zyzz{zzz{{{{{{|{|{z{{z{z{{{z{{|||{{zzz{{|{{|{||z{zzz{{z{{{{|{|{{{zzz|zz{||{{||{{{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{{{{{|{{{{||{{{zy{{z{{{{|{{|{{zzy|zz{{{z|{{{{zz{{zz{{|{{|}{zzz{zzzz{z{|{{||zz{{zz{{{{{{{{{||z{zz{z{{{{{{{{|{{zzz{zy{{{|{{{|{z|{z{z{zzzzz||{{{{z{zz{z{{||{{{{{zzz{{|{z{{{z}|{y{{{{{{{{|{{|{{{zzz{z{|{z{||{|{{{z{zzz|z{||{||{{zz{{z{{{{|||||{zz{{|{zz{|{|{{|{{{{{{{{{{}{{{||{{|{zz|z{{||{{||}z{{{z{|{|{{|||||{{{{{{{{}|{|||}||z{{{|{z|{||||{|{|||{|||{|||{|||}{{{||{{{||}|}}}|{||z|{{}|{|{|}|||{{{{{{{{{{|{|||{|{|{|{|{|{||}|||{{{|{|{|{|}|||||{{z{{{{|||}{}{{z{{{{{{|{{||{}||{{{|{{{{}}|{{}||{z{{zzz||{{{|{|{z{{zz{{{|{{|||{{{z{{zz{{{{z{|{{{{{yzz{zz||{{|z|{z{{zz{{{|{|y|{|{z{zz{zz{z|z{{|z|{{zyzz{{zz||z{{zz{z{yzzzz{|{z|{zz{zzzz{{|z{|{|{{z{zzz{z{{||{{{|{{{yzyzzz{{z{|z{{zzzz{z{z{{z|{{zz{{z{{{zz{z{{{{{{zzz{{{z{{z|{{|{|{z{zz|z{{{|{|||z{zzz{z|{z{|{|{|{{|{{yz{z}{{|{|{||{{|{z{z||{{||{{|{{|{{{{|||{}|{{{{y{{{{{|{|||||{z||{{|{{|{||||||{{{||{{|{}|{||||{|{z|{{{}|||||{||{{{{|{|{|{||{}|{{{{{{{{|||}||}|||{{{{|||||{{}|{|{{{{{||||{|||||{z{{{{|||{|{}||{{{{{{|{|{|||{|||{{||{{{|{|{||||{||z{{z{|{{||}||{{||{z{{{{||||||{{|{{||zz|||}{|{{{|{|{{{||{{|{{|||{|{zz{||{||{|||z{{zz{z|{{|{|z|{z{zzz{z{{{{{|{{{zz{{{{z{{|z{||{zz{{zzz{{{{{|{{{{{{z|y{{{{{{|{||z{z{{{z{{{|{{|{zzz{z{zzzz{{{|{||{{{zzzzzz{{{{{{|{zzzzzzzz{zz{|{{zz{z{z{{{||{|{|{{{zzzz{{{{{{{{{|{{{{{z{{z{|{{|||{z{{{|zz{|{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{{|{{zzzz{y|{{{{{|{{{{z{{zz{{y{{|}|x{{z{{{z{|{|z{{|{{zz{z{z{z{{|{{{zzzz{{zy{{|{{{||{y{z{{y{{zz|{z{|{{z{zzzz{{{{{|{{|zz{{yzz{{{z{|{y{{zzzz{zz|zz{{|{{zzzz{zz|{{{z{||{{{z{z{zz{{{{{{|{zz{{zzz{|{|{{{{{{{zz|{{{|{||{|||y{{zzzz{|z{{}|{|{|{{z{z{||{{||{{|{{{{zz{|||{{||{{{{{{{{|||}|}||zzz|{z|{||{||||||{{{z{{{{|||||{{|{z{||{{|||z{||{|{{{|{|{|||||}|}}|{|{{|{|{|||||||z{{{{{{|||}{||}|{z{{{|{||||}||||{{z{{{{{|||||}{{||{{{z{{|{{|}|}|{{|{{{{||{}|||||||{zz|{{||{{{{{{{{{z{{y{{|{{{||{{{{zy{||{|{||{{{{{zz|{z|z{{{|{{|z{z{{z{|{{|z||{z{{zz{zx{{{|{||{{{{{z{{y{|{{{{{{|z{{{zz{{{|zz|{{z{{zyzz{|z{{{|z{{zzz{zzz{{{{z{|z{zz{yzzz{{{{z{||{{{zz{{z{{|{{{|{z{{zzz{z{{|{z{{|zzzz{zzz{{{{{|{{zz{{{z{z{|||||||{z{z{{z{{||{{{|||zz{{z|z{{{{||||{zz{zzzz{|{{|{{|{{{{{{{z{||{{{{{|{{{z{z{{{|z{{}{{z{z||{{{||{{|{|{{{{{{{|{|{{{||{{{{{{{|{|{{|{||}{{{|{{zz{||||||}}{{{|{{|{}{|||||}{|{{|{|||{{{}}||{|{{{{{|}|||}|}|{|{{{{{||{||||||{{{{z{{}|||{{||||{{{z{{||||||{}{{z{{{|{{{{{|||||{{||{|{||||{{|||{{{z{{{{{{|{{|{}|{z|||z|{{{{|||{{{{{{z{{||{|{||{|{{{{z{{|{{{{{{{zz{{zzz{|{{{||}|{{{{y{{{{}|{||{{zzz{zzzz{{||{|{{z|{zzzz{{|{z{{|{{{zzzzz{{z{|{||{{{zzz{{{{z{|{|{{z{zz{zzz{|{{{{|{{{zzzzzzz|{||}{{zz{zz{zz{|{{{{|{z{zzz{{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{||{{|||{|{{{zzz{|{{{|{|{{{z{z|z|{{z|}||{|{{{zzz|{|{{{|{{|zzz{{z{{{|{|{{|zz{{zzz|{{{|{{y{zz{z{{z{{|{{|z{z{{{z{z{{{|{{{{|{z{z|yz{z{{{{{{{{{zzzzz{{|{{||||z{z{z{zz{{{{{z{{z{z{zz{z{|{{{{{|{{zzzzzzz{{{{||{zz{zyz{z||{|{||{{{z{|z{zz{{|{{{}{zz{z{{|{{|{|{{{z{{{{{{{{|{z||}}{z||{zz{{|||{||{|{{{{zzz{|||{{|{|zz{{|{z|{|{{{{{|{{zzz|{{{{||{{}|{{{|z|{{{{}|}}|{z||zzz{||{}||{{|z{{{zzz||||{|}||||{{||{|z|||}|}{{{{{||{{}||{|||{{{{{{{|{{|{{||||{{{{{z|{{|||||}{|{{||z{}||||||}{|{zz|{z||}||~}}{|{{{{||{{|{||||{{{{{{{{{{}|{|{|{{{|{{z|z{{|{|{|{{|{{z{{{{{{{|||{z{zy{zz|}{{{||{|{zzz{{|{|{{z{{{z{zzzz{{{||{z{{|{{zzz{zz{{{{{{|zz{z|z{{z{{|{z||zzz{zz|z{z{{{{{{{zzzyzz|z{{|z{{|{zzzzy{z{z{{{{{{{{z{{z{zzz{{{z{|zz{zzz{{zz{{z{{{{{{{z{{{z{{zz{{|{{{{{zzzzz{||{{{|zz{z{z{z{{{{z|||zz{{{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{{{{z||{{|{||}z{zz{z{||z||{|{{{{|z{{||z|{{||{{{{{{|{{|{{{{{|{{|zz{{z{{|{{{z{{|{{z{{{{z|z{{{{{{zzzzzz|{|z{|||{{{z{{z{{{{|z|{z{z{z{{zzzz{{zz||zzz{zzz{{|z|{z|{{{{zzzyz{z{zz{|yzz{{z{z{{|{{{{{|z{{{zz{z{{|z{{{|y{z{{zzzy{{{{|{|z{{{z{zz{{z{z{{|{zz{zz{z|{|{||{{{z{{{zz{{||{}|{|{z{z{zz{{{{{{{{|{z{z{{{zz|{{{{|{{{{z{{zz|{{z{{||{{z{{{{{||{{{{|{{{z{|{{z|||||||{{{{{{{{{||{||{|{|z{{{{{z{|||||}|}{{{{{{{|||||}||||{{{{{{{||||||||{{{|{z||||{|}|||{{{|{|{|{}||||}|{{{|{{{|{|||{|{{{{{||{}}||||}||{{{zz{|||{||||}{{{{{{{{|{}|||}{{}|{z|zz{{|{{{{{{{|{{|{zz|{|{|{{|{{{z{z{{{|{|||{|{{|z{{y{|{|||}|||{{{{{{z{{{|||{}zz{zz{{{z||{z|{{{z{z{zzz{{z{{|{|{{{zz{z{{{{|{|{{{zz{{|{z|{{z{{{{z{zzzy{|{|{{{{|{{z{{zzz{{{{{|{|{z{{z{yz{z|z|{|{{zzzz{{{z{{|z{|{{zz{{{{zzz{{{{|||{z{z{{z{{{{{{||{{zz{{z{z{|{|{{|{{|z{zy{z{{{{|{{{z{zz{{{z{||{|||}z||{zz{{{{z{|{|{zz{{{z{{{{{{{|||{zz{{{{{|z||{{||z{{z{||{||||||}||{|z{{|z||{|}|||{{{{z{zz{}||}{}||{{{{}|||||||{}}|{|{{||{{||||{}}|{||{{{zz{||||{{|||{|z{{|||||}}{|{{{|{|{z{||{}||}{{{|||||{{||||{|{|{{{|{||{||||{{|z|{z{{{||||||{{||{|{{{z{|{||{{{{{z{{{{{z|{||||{{|{z|{{{{{{{|||{{zz{{{z{{|{{{|||y{z{z{{{{{}{|{{{{{zz{zz|{{{{{{|zz{zz{zz{{{{{{zzzz{z{zzz{{{{z|{z{z{{zzz|{z{{{||{{zzzyz{z{{{{z{{{z{{zzzzz{{|{|z|}zzzz{zzzz{{z{{|{zzzzz{zyz{zzz{|{{z{z{zz{z{{z{|{{z{{{z|z{{{{{|{{|{{z{zz{z|{{z{{|{{z{z{z|zz|{{{{z{z{|{{z{z||}|{||z{{{{zz{{z|{{{{}{{{{yzz{z{|{{{{|{|{zzz|z{{|{{{|{|{zz{{|{z{{|{|{|{{{{{{|{{{{||z|}|{|{|z{{{||||{||||zz{|{z}|||{|||{|{{{z{{|{{{||||}{|z|{{z{||||||}|{{{|{z{{||||||}{{z{z|{|{||{||||||{||{{{{|}{~|||{{|{{{{|{{{|||{}|{|{{|z|{{|{{{{|}{{|z{{zz|{||{{{{}{{{{{{{{{|{|{{{{|{{zzz{|{}{|||||z{zzz{{{{{{{{{{{zz{{z{z{{||{z{|{{{{z{zzz{|{{{z{{{{z{zzzz{z{{{{{{zz{zzzz{||{z||{z{zzz{{z{{y{{||{{{z{zzz{{{||{{{{{zz{z{zz{{{{{{{|zz{{z{{y{||z{{{{z{zzz{zz{zz{z{||{{{{z{z{z{z{{|{{{{|z{zzz{{z{{|||{{{zzzz{{{|{zz{{{{{zzz|z{z{{|{||zz{{z{{z{{||{{||{{z{zz|{{{{|||||{z{z{y{z{{{{{{|{{{{{z{z{|}{|{{{{|zz{z{z{{|||{|||{{{{{|{{{|{|{||}{{|{z{{z{|||||||{{|{{{{{||{{|||||{{{|||{{{{||||}|{||{z|||||}}||||z|{{{{{{|||||}||{{z|z{|||}{||}}}|{{|{{|||||||||{{|{{{||{||}{|}|{{{{{|{{{{|}|||{|z|z{z|{{||{||||{{zz|{{|{|||}{|{{{z{{{{z|||{|{|{|{zz{{{z|{{{{|}||z{{{zz{|{|{{z}|{{|yzz{z|{{|{{{}zzz{zz{zz|{{y|{z|z{{{z{z{{z{{||{{|zzzzzz{{{|{|z{{zz{{{zz{z{{|{|{|{{zzzzz{{|{{{{{z{{{z{zz{{{|z{||{zz{zzzz{{zzz{z}{z{{z{zzz{|{z{|z{{{zzzz{{{{z{{}{{{|z{zz{{{{z|z||{{{{{{z{z{{{{{{|zz|z{{z{{|{||{|z|z{{{{{{{{{|||{{{{{{z|{{{{|{z{}{{{{{{z{{|{|{|||{{{zz|zz{|||{||{|{{{{{||{||||||||{|{{{{|y|||{||}}|{||{{{{{|}|}|}||||{{||||}{|}}|||{|{{{{{||}}|}||{{|||{{{}{}||}}|{{||{{{{{|{||}|}{|||{z|{{{}||}}}{{|z||{z{}{}{|||||{z|{z{{||{|{|||{{z{z{||||}|}||||zz{{{z||{{|{{||{{z{zzz|||||}||{{{{|z{z{{||z|||{{{{|{{z{||{{{|||{{{z{{z{{{}|||{{{z{{zz{{|{{{{|||{zz{{zzz{{{|||{{z{{{zzz{{{|{||{{{{z{{{{{{|{{||{z{{{|{{{z||||{||{{{z{{{{{{{|{{{||zzzzzzz{z{||{||zz{{z{{{{z{{{|z{z{|{|zz{z{{{{||{{{{{zz{{{{{|{{{|z{zz{{{|{{{{|}||{{{{{{{z|z||{|||{{{{|z|z{{|{|||||zz{{{{z|||{{{}|{{{{{{z{|{{|||{{}{|{|z{{||||{|{||{{{{z|{|||||}}|{|{|{|z{|||||{|||{{{|||z|}|||{|||||{|{|}|||||{|||z||||{{|}|{|}||}z||{{{|||{|||}{}|z||{|{||{|}}}}}|{|||{z}|||{}||||||{{||||||||}}{{||z{{z|~||}||{{{|{{{{||||{{|{|{{{{{{{{zz|{{{{|{zz{{zzz|{{|{||{|{|{z{|z{{|{|||{|z{{zz{{z{{{{{{{{z{zz{zy{{{{{|||{{z{zz{{z{{{{{|{{z|z{zz{{|{{{|{zz{z{z{{{{zz{z|{{z{z{{z{z{{{{z{{|{yzz{zz{zz{{{|{{z{{{zzz{{{{|z||{{zzz{{z{{zz{{{||{zzz{zzzy|z{z|||{zzz{{zz|{{{{|{{{z|{z{|{{|{|{|{|{z{zz{z{|{|{|z||z|{zz{{{|{|{{||{{||{z{zz{|{{{|||zz{|{{z{{|{|z||{z{{{{z{z|{{|{{}{z{z{{||{{{{|{||{z{{z{{||{}{}{|||z{z{{{{{}|||{|{|||{|{{||||{|||}||{|{|||{||||}}}||z|{{|{{|}{||||||z|||{{|||||{}}|{{|||{{{|{{||||}}|{|{|{|{}|{}||{{{{{{|{{||}||||{|{{{{{{{|||{{}|||{|zz{|{|||{{|{{|{zz{zzzz{|{|{||{{zz|zz{|{{{{|{|{z{{z{zz|{{z{||{{zz{{{z{{z||y{{{{{|{{z{zz{|{{|z{zzz{zz{z{{z{z|{{{{y{z{zzz{{{zz{|{z{zz{z{{yz{{||{zzz{{y{{{|{{{{|}{{zzyyyzzz{{{{{{zz{zzy{z{{{|z{|{{{z{z{zzy{{{zz{|{{{yzy{{{{{{|}{zzzzzz{zz{{{{{{|{zzzzz{zy{|{{|{{|{{zy{zzzz{{|{|{{z{{{zz{{|{|{{z||{{{{z{{z{{||{{{zzz{{yzzz|{|{{|{z{{{{{z{{{|{{{{{||{{z{{{{|||||||{z{z{yz{{|{|{{||||{{{{|z{|{{{{{{|{z{{|z|{{|||||}|z{z|z|z{|{{{|||{|z{{{{|{{|{}|{}|}|{{z{{||{|||||{{{{||{z{{{||||}}|{{|{{{||||{{{|}{}{{{{zz{{{||||{z|zz{z|z|||{||||{{{zz{{z|{|{{|{{|z{|{zz{{{{{{|}|{{{z{{z{{{z{{|{|{{z{{{{{{{{{{{{|{{zzz{z{{{{|{{{{{{zzyz{z{z{|z{{{{zzz{z{z{{{{z{{{{z{{{{{z{{z|{{{{{{zzzz{z{z{{{|{{yz{zzzzzz{z|{{|{zzz{z{zz|{{{{|{{{{{{z{yzz{{{{{{z{{{yzzz{{{{{{{z|zzzz|zzzz{z{{||{{z{{{zzzz{z{|z|{{z{zzz{{{|z{{{{z{{{y{{zz{{{||{{{{{{z{{y{{{y{{{|||{{z{z{{{{{|||||z{{{z{z|{z{{{|{{zzz{{{z{{|{{{{|||z{{{{z|||||||}{{z{{{{|z{|{|{||||{|{{|zz||}{{{||{{{|{{|{|||{{|||{z|{{{{{{||{|}|||{{{{|{|{}{||{||||{|{{{{||{|||{{|{|{{{{|||||{|}|{|{}}|{||{{|{{|||||{{|{{{}||||{||{{{{{z{|}{|||||{|{{{{{{{||{{|{|{{{{{{{zz||{z{||{z|{zz{{{{|{{z||{zz{z{z{{{z{{|{|{{{{zzzzz|{{z|||zz{{z{{y{{{{{|{{z{{zz{{z{{{{{{{{{z{{zz{{z{|z{z{{z{zzz{{{{|z{{|{{{{z{{{z{{{{z{||z{yzzy{zzz||{{|{{z{{zz{zzz{{z{{||zz{y{z{zzz{{{{{|{zyz{zzy{{{{{{{|yz{z{z{{{{{{{{{{{zz{z{{z{{{{{{}|{z|{zzz{|{{||{{|{{{{zzy{{{{{|{z{{{|{{{{zz{{{{|{|{{z{{{z{{{{|{|||{{{{{zz{{|{|{|{|{{{{{||z{|||{|||z{z{{{{{{|z|{}|}z{{{{z{{{|{||}||{z{{{z|{||{||}}|{{{{}|{{||||||||}{||{|||{||}|{|{~||{|{{{||||}||||z{|{{|z{{|{|{}||{|{||{||{|{{||{{z{z{{{||||||||{|z{{|{|{||||{|{||z{{{{{{{|{|||{zz{zz|z{y{{|z{|||zz|{zzzz{{{{|{{|{{zzzzz{||zz{{{{|{{z{zz{{|||{{||{{{zzzzz|{{|{{{{{{zy{z{z{|{{{||{{{zz{zz{{{|zz|{z{{zy{{|z{zy{{z{{{zyz{{{zyz{z{{{{{z{zzzy{zz{{{{{{z{zz{zz{{{{{z{{{zzzzzzzzy{z{z{{|zzz{z{{yz{zzz{y{{zzzzzzz{z{z{{|{zzzzzz{z{{zy{{{|{zzzyz{z{|{{|{{{z{zzzy{z{{{{z{|||{|yz{{{zz{|{|||zz{zz{{z{{||{||{z{{{{{z{{{{|{{{{{{zz{{z|{||||||{{{{{z{|{{|||||||{{{{|{z{z||{||||{|{{{{z|||||||||zz|{{{{{|||{||{{}{{zz{{{{|{{||{{|{|{{{|{{|{|||{|{{{{z|{||{||{||}|{{|{{{{||{|||{|{{{zzz{z{|{{{|{||{{{|z|z{{{{{|||{{{{z{{{|{||{|{|z{{{{{{z{{|z{z{{{z{{{{z||{{|||||{{{z{{{z{{z{{{|{{{y{zzy{{{|z{{{}{zzzz{zy{{{{|{{|{zz{z{{{{|zz{{{z{{{z{{z{{z{|z|{{{z{zzyz{||{{{|{|{{yzzzzzy{{{{{{{zz{z{zzzz{{{||{{{{{zz{zzz{||{{{{{{{zz|zzyzz{{|{{z{zy{zzzz{{{z{{{zz|{zzzz{{{{{z|{{{zzz{{z{zz{{{|{{|z{zz{{{|{{|{{|zzz{{{{z{{{|{{z|z{{z{z{z{|||{{{zz|zz{{{{{{{z||}||z{{{{{z||z{{|{|zz{z{{{{|{{||}|}{{{yz{{z|{{|{}||{z{{z{{|z|{||{|{|{{{{{{{|||||}|}}{{||z{|{|||}||||{{{{|||||{}||}||z||||||||||{}|||{z{{{|{}{{||{|||{{{|{|{|{{|||}}z{{{{{zz{{{{|||{{{{|{||z{{{|{||||{{|{{z{{||{{|{{z{zzzzz{{|{{{||{{{{{zzz{{{|{||||z{z{zz{z|{{{{{{|{z|z{yy{{|{|{{{{{{zyzz{z{{{|{z{{{zz{{zzzzz{z{{{||{{{z{zzz{{{{|z|{zzyyzy{z|{{z|zzz{zyzzz{zz{{z{|{zzzzzzyzz{{zz{z{z{{zzzzz{{yz{{|{{z{zzz{z{z{{{{{{|{zzzzzzy{{z{{{zzz{{{zzz{|{z{{|{{yzzzz{{zzzz{|{{z{{{{z{z{{{{{{{{{{{zzy{{z{{{z{|{{z{{{z{z{{||{{{{{{{{{{zz|{{{{||{zz{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{zzz|{{}|z{{{{{z{{||{{{{{{|{{zzzz{{{|{{{|{{{zz{{z{|z{{{||{z{{{zz{zzzz{{{{{{{{z{{{{{{{{}{{zzzzz{{z{{{{{{zz{{zy{zzz|{{{|{|{{z|zzzz{z{{{{{{{{{|zzzzz{{{{{z{{{{zzzzzzz{{zz{{{zzzz{z{zzz{{{{|{{{zz|zz{{|{{{|z{{{{z{{zz|{{{z}{|{z{z{{{{|{|||||{{{zz{{|z{||{{{{|{{{{{{|{|{|{{{|{{z{{{{z{{{|{{||{{z{zzzz{|{|}|}|{{{|z{{{{||}||||||{|{{{z{||{|||}|||{{{{{{|||{||}}{{{{|{|||}}{||{|||{{z{{|{}}||}}|}{{|{{z||||||||{|{{|{{|{{|{{|}}||}{{{{{|}|||}||}||{{{|{{{|{{|{|}}|{{z{|{||||{||{{{|{|z|{{|}{{|{{{|{{|z{z{{{|z||}z{z{{zzz{{{{{|{{||zz{zzzz{|{{|{{}z{zz{z|{{{|{{}{{{zz{|z{{{{|{{{|{zzzz{{zzz{{zz{z{{{{{z{z{z{{z{{{{{zyz{{y{{z||{{|zzy{{zzzz{{{{{||{{{zzzyz{{|{z{|{{{{z{{zz|{{|zz||{{z{zyzyyzzz{{{{{{z{zzz{z{z|{{{{{{{z{zzz{z{{{{z|{z{zzz{z{|{{{|{|{{zzz{{z{{{|{{|{zzz{{{yz|z{{{{{{{{{{zz{z{|{{{{|z|z{{{{z{|||{|||{{{{{{{{{|||{|}|||{z{{|{z{||{|}||{z{z|{{{|{|}{||||||{{{{z}||{{||||{|||{z{||}|||}}{z|{{||||||}|}{{|{|{{||{{}|||}||{||{{z|{|{}|{}}|}{{z{{|||||{|}}|{|{|{{{{|||}||{||{|z{{{z{|{|{{{|{{z|{||{{|{||{|||{zz{{{{{z||{{{|{z{{{|zz{{|{y{}|{zzz{yzz{{{{|{|{{{{y{z{{z|z{{|||{zzz{z{z{{{{{z{{{z{yzzzz{|{{{z{{{|{yz{zzz{{z{z{{{{{z{zyz{{{z{|{z{{zzz{z{z{{z{{{{zz{zzyzzz{{z{|||{zzzzzyz{zz{|{{z{z{{zzzz{{z{{{{|{z{zz{{zz{{{{{{{{z{zzzzz{|{{z{{z{z{z{{{zz{{{{{{{{zyzzzzyz|{{|{{{zz{zzz{z{z{{{{}{{{{zz{z{z{{{|||{|{{{{z{{{|{|{{|{{z{z{{zz{||||{{{{{|{{|zz{|{{{{{|{{zz{z{|{{|||{||z{{zzz{{{{{{|{}|z{|z{{{z{{|{}{|{{{|{z{{zz||{|||{{{|{z}|{{|||{||{}{{{{|{||}|||{|||{{{{{{|{||}|}{||{{|z{{|{{{{||{}{{{|{|{||{{{||||{{{{z{|{|{{{{||||{z|{{zz{||||{{}{{{z{{{{{{{|{{|{{{z{z|{{{|||{{||{zz{{{z{z{||{{||{{{z{z|{{{{{z{|}{{z{zz{{{{|{{{{{z{{z{{{z{{{z|{{|zzz{zzzzzz{z{|||z{{{z{|{{|{zz{{{{{{zzzzzzz{{{{{{zzzz{zzzz{{{{{{{{yzzz{yzz|{|z{||{zz{{{zz{{{|{|{|{z{{{zzz{{{zz{{{z{{zzzzzzz|{z|{{{{{{{z{z{{{{{|||{{zzzz{{{|z{{|{{z{|{zz{{|{{{{|||zz{{z{z{||{|{{{{{{{zzz{{{|||{|{{{z{{{z{z{{{{{{||{{zz{{{z|{{{{{||{|{z|{{||{{{|{{|{{{{|{{}||{{||||{|z|{{zz{{{|||{|{z{{|{{{{}{{||}|{{|{||{{|||{|{|||||{|{|{{}|}||}||{{|z|||||{|{|}||z{{{zz{{||}{|||{{{{{{{||||||}{|{|{{{}{z{|{{{{}}|{{{{z{{{||||||{{{{{z{z{{|||{||{z|{{zz|z{||{{{{{{{{{zyzz|{{|{{||{{{z{z{z{{|{||||z{|{{z{z{z{}zz||z{{{z{{z{{{{{{{|zz|{zzzz{||{z{{{{z{z{zz{{||{{{{{{zz{{zzz{|{{z{zz{{zz{zzz{{|{{{zzyzz{z{z{{z{{{||{z{{z{{z{{|{{{{{{z{{zyzzyz{z{z{{z{y{{zzzz{z{{z{{|z{{zz{zzz{{{zz{{{{{z{zzzz|{{{|||z{{z{z|z{{||||{|z{{{zz{{|{{||||{{{{z{z{{{|{|{{{{{{{{{zzz{||{{{{||z{{z{{z|{{z|{|{|{{{{z|{{|{|{|{|{|{{{z|{{|{}{|||{zz{{{z|{}|||||{|{{{z{{|}||{|z||{z{{|{{|{|{{|{||}|{{{||{z}||}||{|{{|{z{{||{||||||{{|{z{|{|{||||||{{{{|{||{|{{}|{{{z{{{{{{|{|{{||||{|y{{z{|{|{{}||{{{{z{{{{{||||z|{zzz{{z|{{{{||{{{z{{{{{|{{{{|{{{{{zz{{{{||{{z|{{{zzz{{{{{|z{{{|z{|yyzzz{|{{{{z|zz{zzzzy{||z{{|{{{|zzzzy|{|{z|{{z{zz{{z{z{{{z{z{zz{{z{{{{z{{{{|zz{z{z{zz{{{{{|z{{{{{y{zzz{{|{{|{{zz{z{zy{{{{z{z|z{{y{|zzz{{{z|{{z{zzz{zz{{{{{z{{zzzzzzzz{{|{{z{{{{z{zz{z|{zz{{{|{zz{zzz{{{|{|{||{|{z{zzz||{|{{{|{z{zyz{z{{{|{z||{{z{{{z{{{z{{{||{zz{{}z{{|}|{|||{{{{{{{{{|||||||{|{{{||{{||{|||{{{{{{{{{|||||}}||{|{|{{{||{{||||||{|{|{||||~|}}{|{{{||{{{|{{|{||{|{{{z{}{|||{}|||{{{{|{{{|||||||||{{|{{||{||{|||{|z{{{{zz{{|||||{{|{{{{{{||{{|z|{{|y{z{zz|{{{{||zz{zzzz{{{|||{{{|{zzzzy{{{{{{|{|zz{{z{z{{{|{{z{{{{{z{{{z{z|{{{{{zz{y{z{z{{z{{{{zzz{z{{{z{{|{{|{{{zz{zzzz{{{|{|{{z{zz{zzzz{{z||{zzz{zyzzz{{{{{{z|z{{yzzyy{{|{z|{{{{y{{z{{z|{|{|{{zzyyzzzzzz{|zz{z{z{{zzzzz{{{{{|z{y{y{y{z{{||{z{|z{{z{zz{{z{{z{{|zz{z{{{y{{{||z{{{zz{{z{z{{{{{|{{|{{z{xzz{{{|{{}{{|zz{{|{{||{|{z{{zz{{{{{{|||||{|{z{{{z{{{|{{{{{|{{{{z|{z|||{|{|{{{{z{{z{{|||{|}||{{z{{|{||{{||{||z|{z|{{{|}}|||||{|}{{{|z||{{{|{{|{|{|{{{|{}|{|||{{{|{{{{|{|~|||{{{y{{{{|{z{{{|||z{{zzz{||{|{|||{{||{{zz|{|{||{}{|zz{{{{{{{{{{{|{z{{{{zz{zz|||{{{zzz{{z{{{zz|{{|{z{zz{{{{z|{{{||{{{z{zz{{|{|||z{|{{zzy{z||{yz{|{{zzzzzzz{{{{z{|{{y{yzzz{zzz{z{{|{zzz{zzy{|z{z{|z{zzzz{zyz{z{{{{{{{{{zzz{z{{||z{{zzz{zzzzzz{zz{{{zzzzzzzyzzzz{{z{yz{zzzzz{{z|{{{{zzyz{zz{z{{|z{{{{z{z{zzz{{{{{|{|{{zz{{{z{z{|{{|{{z{z{zz{{{{{{||{{{{zzz{{{{|{|{|{{{{{|z{{{{{{{{z|{{|z||{z{{|||{{{{{z{{{{{|{{{{}|{{{z{{{{{|{{z|{|z|z|z|{{{{|{{{|||{{}|{{|{||}||||||{{|{{{||||||||{{{{{{{{{|{||{||||{{z{{{|||||{}|}||{{{{z{{||||||~{{{{{{{{|||||||||z{|{z{{|||}{||{z|{{{z{{{{{||||{{zzzyz{{z||{{{{|{zzz{zzz{{|{||{|z|{y|{zz{{{{{}{|{{{{|{z{{{||{{||{{|z{z{y{|{|||{|z{z{{zyzz|{zz||{z{{zzzyz{z||{{{{z{{zzzzz{|{z{z{|{z{zzz{{{{zzz|{{{{zzz{zz{{{{||{|{zzzzzz{{{{||{||zzz{{z{z{{{z{{|{zz{zzz{z{{{{{|{{zz{{zzzz{{{{{{{{z{zzzz{z{{{|{}|{|{|{zzzz{{|{{{||{{{z{z{{z{|{{|{|zz|{zz{{{|{|{}{|zz{zzzz{||}{{{|{|{{z|{{||{{||{||||{{zzz{z{||||||{||z|{{|{{|{{||||{{{{{zz}{{|{}}||z|{|||{{{{|}|{|{{|{{{|{|{{||||}|{||{|{|{||||||||{{|{{{}|}||{||}|{z{{{{{|||{||||z{{|{{{||}||||||{|{{{}{{||{|}||||{{{z||{||||{}||{{|{|{{|||||{|{}{{z{z{zz{{{{{{{|{z{z{{z{|{||{{{|||{y{z{z{|{||{|{{z|{{{zz{{{{{|{||z{z{z{{{z|{||{{{z{{zz{{{{|z{{{z{{|z{z{z{{{{{|{z{{zzz{z{{{{{{{{zz{z{{z{z{|{{{{|{{zyzzzz{|{{{{z|z|zzzzzy{z|{{{||{z{z{zzzzzz{z{{{|z{{{zzzzz|{{z{zz{{{z{{{z{{|{{{|{{{{yzzz{{|{{{{|||{|zz{{{z{{{{|z|{{zzzzz{{|{{{{|z|z|{z{{{z{{|{{|{{{{{{{{z|||{z{||{{{z{{{y|{||{|||{z{{z{z{||||||||z{{z|z|{z{{|{}}}|{|{{z{{}|||}{{||{zz{{y{}||}|{|{{|{{{||{{||||||||{{{{{|{|}|||||}|{|||z{{}}||||{|{{{{{z{{||{||{|||{{{{{{|||{|{{|}{{|{{|{z||}|{|{|{{|z{|{{z|{{{||{|z|z{z|{{|||{||z{{y{{yyy{{{{{z{{{z{zzzz{{z|{{|{z{zz{z{zz{{{||{{{z{{zzzzz{{{{{{|{|z{y{yz{{{|{{{||z{{{zz{z{{|{|{{{{z{zzzzz{{{z{z{|{{|zzzzz{{zzz|{zz{{z{z{z{{{|{{{z{zzzyzzzz{zz|||{z{zzz{yzy{{{{{{{zzzzz{zzz{zz{{{zzyzzzz{zz{{zz|{{zz{z{{zyzz{{{{|{{{zzzz{{{{|{z{{|zz{{zzz{{{{|{|||{z{{zyzz{{{z{|{{{{{z|z{{z||{{{{|zzzz{{{{{|||{||{{z{|{{{{{{||{{|{{zzz{{z{{||{{|||{{{|z{{z{{{|{{||z{{{{z{{||}{|{{{{{{{|{{z}}|{|||||{{{z|{{||{||||||{z{{{{{|{||}||||||{{{{{|||{|~{|||{{{{z{|{||}||}{|{{{{{{|||}|||{||{{{{||{{{}|||||||{{|{{{|{||||{{|{z||{z||{|{{|{z{z{z{{y{{{{{z{{{zz{z{z{{{{}{{{|{zzzzzz{{z||{|{|{zzz{{{z|z{{{{|{{{zy{{zz|{{|{{{{{z{{zzzzz{{z{z|{{{{{zzz{{{z{{z{|{{{{zzz{{{z{{{{|yz{{zyzy|z{{{{z|{{z{y{zzz{{{{{zzz{z{xzzzz{zz{||{{zzz{y|y{z{{z{zz{zz{{zzzz{{{z{{{zz{{z{zz{{zz{z|z{zzz{{{{z|{z{z{{{z{{{zzz{|{z||{|{z{zz{{{{z|{{{{|z{z{{zz{{z{{{{{|{z{z{{z{||{{{{|{{{zzz{zz{{{z||{|{{z{|{z{{z{{||{|{{{z{{|{||{}{|||{{z|{{{{{{||{||{||{zz{{{|||||||||{{{|{{{{||{||||{z{{z{{{{|||||}|{{{|{zz{}||{|||{|{{{{|{z|{{{|{|}||{|{{{{||{{|}}|{{{{{z|{{||{|}||{{{{{{zz{||{{|}{{{{{z|{{{{{||{{{{{zzzzzzz{|{|}{{{{{zz{zz{{|{{||{z{{{z{{z{{|{|{||z{zz{{{z|{{{{|{|{{z{zzzy{{{|{{}{{|{yz{{z{|z{z{|{{{{z{{{z{{|{{{z{{{z{z{zz{{z{{{{|z{zz{zzzzz{|{{{zzzzzzzz{{{{z||{{zz{{zzz{{{{|{{{{z{zzzzzz{{z{z{zzzzzzzyzz{{z{z{{{z{zz{zzz{{||{z|{{y{z{{zz{{{{{{{{{z{yy{zz{{{{{{{|{z{zy{z{||{{{|{{{{zzyz{{{|{|{|zz{{{z{zz{|{{{|{{{{{|{{z|{|{{{z{|{z{z{{{zz|{|||{|{{z{{{{{{{|{{{}{|{{{|{{z{{{||{|{|{{{|{{{||||{{|}||{|{{|{{||{|||}||{{{{{{|{|||||}|{{|{z{{|||||{||{|{{|{{{|{||{{}|||{{{|{{{{||{|||}{zz{{{z{{|{{||}|{{z|{z{z|||||{|||{z{zz|{{||||{z{z{{{zz{{{{{{z{|{{{z{{z{z{z{{{|||{zzzzzz{{{{|{{|zz{z{zzzzzz{{zz|{{{{zzz{{{{{{z{{{{z{zz{zy{{{|z{|{z{{zz|zzz{{zz|{{z{zzz{z{z{z{{{{|zzzz{zy{{{{{z{{z{zz{z{z{{{{{{{|{{z{zzzy{{{{{z{{{{{{zzzzzy{zzy{{|{z{z{yzz{{z{z{zzzzz|{{yzz{{{{z{{zzzzzz{z{{{|{{||{z{zzz{{{{{{|{||zzz{{zyz{|{z{{{{{z{|{{{z||z|{|{|zz|zzzz|{{|{|{{{zz{{{zz{{|{{z{{{{{{{{{{{{{zz{|||{{{{||z{{{{|{|{||{{{{zz{|||||||{|{z{|z{{|}|||{||{{||{{{{z{{|||||||{{{{{{{|||{|||}{{{z{z{{{|||||||{z{{{{|||{|||{|{{z{|{|{|{|}||}|{z{{{|{{{||{{|{|||{|z||{{|||||{{{||z{{zz|||{{z{{z{z{{{{z{{{|{{{||z{zzz{z||{z||||zz{{z{{{{{{{z{|{|y{{{zz{z{|{{{|||{{|zz{z{y{{{{||z{zzzz{{{{{{{{|{{{|{zzzz{{|{|{|z|zz{{{{{{zz|{|{{{zzzz{zz{zz{{{{{z|z{zzzz{{{{{{{{{{{zz{yz{{{z{z{{zz{zzz{zz{{zz{{{{{{z{{z{z{{{z{{{zz{zzzz{y{z{z{{{z{{zzzzz{{{z{{{|z{{{yz{{{z{{{|{{z{{{zzzz|||{|{{|{{|z{{{z{{|{|||{{zzz{{{{z{{{{||{{{z|{zz|{|||{|{|{{z{{{{z{|||{|{||||{{{|{{|{||||}||{||{{{z||{|{|||z{{{{{{{||||||||{|{{{|{|}||{~||{{{{{|{|{~||}|}}|{{{|z{{|{||{{||{{{|{zz{{z{{|||}|{|{|}z{|{{||}||{{{|{{{{{||||}|}||{{z{{{||z||{}{{{{{{{|z||{|{{z|z{zzz{{z{{{{{|{|{zzzz{zy{{z{|{|{{{{{{|zy{{{{{{|{|zzz{{{{z{{{{{|||z{zzyz{{{{{{{{{zz{zz{zzz{{{{{{{{yz{z{zz|z{{{{{{z{{zy{z{{z{{z|{{z{yzzzzz{{|z{{{{|{{{zzzy{z{z{{zyzz{{zzzy{{||{|{{zz{z{y{yzz{{{{{{z{z{zz{{z|{zz|zz{zzz|zzy{z|{|z{{y{zz{zzz{{{{{{{{{y{{zz{{{{{{{{{|z{z{{{{{{{|{{{|{{z{z{z{{zz{|{{||{|{{{{zz|||{{|||{zz{{{{z{{{||{|{{{{{{zz|{|||{{||{|{{{{{{{{|{|||}zz|z{z||{||{{||{{{{{{{|{|{{}||||{{|{{|{z||||{|}{|{{{{|z||}}||||||{{||z{{||{|{|}|{{{{|{{{{z|{}||||{|{{{z||{{||}|||{{{{|zzz|{||||||zz|{{{z{|{|||}|{|{{{{{{|{||{||{{z{{{{zz{|{z{{|{zzz{z{z{{|{{|{||{{|{{{{z{{|{||{{{{zzzzzz{|{{|{z{z{zzz{{z{{{{{|{|{z{{{zyy{{{{{{{|{z{{z{zzz|zz{{{{{z{y{zy{{{{{{z{{{zyzzz{zzz{z{{|{{z{zz|yz|y{{{z{{|z{{zz{y{|{{z{{{z{zyzz{zz{{z{|{zz{zzyzzz{z{{z{|zyzz{zz{z{{{{z{{|{{zz{{{z{{yzz|{|z{zzzz{z{z{|{|{|z{{{{zzz{{|z{{}||||z{z{{{|{|||{{{{{{{{{{{}|{{{|{{|{zyz{{{{|{{|{||{z{|{{|z{|{||||{{{{{{{{||{{{|||{{{|}z|{|||{|||||z{{{||{|||}|||||{z{{|{|{|||||}||{{||}{{|||{||}|{{{|z{{{{}{{||{||z{|{{z||||||||||z|{{{{{|{||||||{{{{{{z{|||{|||}{{{|z{z{{{||{{|||{|{{{{{{||||{{|{{zz{zzz{|z|{{{{|z{{|zzz{z{{||||{{zz{{{z{|{|z{||{z{{{z{|z|{{{{|{|{zz{zzz{{|{||{{{zz{|{{{{|{{z|{|z{{{{z{{{{{{{{{{{zzz{zzzz{{{{|{|{zzzzz{z{{{{|z{z{|{z{{yz{{{y{{|{z{z{zzz{{{{|{{{{zz{zzzzzz{{{z{{{z{zz{zzzz{{z{{{zzz{{{{zz{z{{z||{{z{z{zzz{|{{{{|{{z{z{z{z{{|z{{{{{z{z{{{{{{{z{{{{{zzz{z{z{{z{{{{||{{z{z{z{|}z{{|{{{z{zz{{{{{|{{{{{{{z|{{{{{|||{||{||{{z{{||{{{||}{||{yz{{{||}||||{||||{|{|||||||{{{{{{{|{{|{{||{||{|{{|z{z}|||{|}|{{{{{{{|||||||{||{|{|{|||{|{||}|{{{||{{|{{|||~}{{{{z|{z{|}|||||||{{{{z|||||{{|||{{{zz|{||||{{{zzz{zzzy{z|z{{{|{{{zzzzzz{{{{{||||zzzzz{{{z{{{||{{{{z{z{{{{|{{{{|{{{z{{z{{{{{||{{zzzz{z{zzz{{{||z{{{zzzzzz{{{{{|{zzzzz{zz{|{{{|z{z{{zy{zz{|{{z{zz{z{zyzzzzz{z{|z|yz{zz{zyz{{|{{{|z{z{zz{zz{{y{z{{{zz{z{zy{{z{z{{{zzz{{z{zz{{z{{|{{zz{{{{z{{{{z|{{{zz{{y{{|zz{{|{{{zzzyzzz{{{{{{{{{z{{z{{{{|{z{|{{{{{{z{{z{{|{{{||{zz{z{zz|}{z{{||{|z{|zz{|||{{{|{{{zz||{{{|||{|||{{{z|{{zz{{}|{|{|{{|z{{z{|{{{||}|{|{z||{z{}|{|||{{z{|{{|{|||{}|}|{|{{{{|||{||}||{z||{{|{|{||{|}{}{{||{{||||||{|~|{{||{{|{|||||||{{||z{{{{|}|{|||{z|{{{z{||}~}{{{{zzz{{{z{{{z{{{zz{zzzzz{z{{{{{{{zzyz|zzz|{{z{{|zzz{{{z{{|z{{z{{z{{z{yz{zz{{|{zz{zyz{z{{{{{z{{{{{{yz{zzzy|{{zz{{{{{zyzzyz{zzz{|{{zzzzzz{{{z{{{{z{zzy{zzzzz{{y{{{z|z{yzzyyz{{{{|{|zyzzzy{zz{{z{{z{zzzz{zzzz{z{{{z{zyz{zzzzzz{{y{z{{{zzzzzz{{{z{{{zzz{zzyzzz{{{{{{{{zzzz{{{{z{{{{{|{{{zzy{z{|{|{{||{{zz{{z{{{{z{{||{z{{z{zzz{|{{||{z{y{{{{{|{{{{|{|{||z{{{{{{{|z|||{zz{{{{{{{|{|{{{|{z{|{{{{|z{{{|||z{z{{{{{{|{{||{zzzz|{{|z|||||||{{{{{{{{||{|{{|{|{{z{{|z{|{{z||}{{{{{{{||{||||{|{|zz{|{{{{||{{{|{{{{{{{{||{|{{}{{{|{|z{{{{{|{|z{z{z{{z{yz{}{|{{|{zzz{zz{|z{|{{{{{z{zzyzz{{{{{|{|{yz{z|{{{{{{|{|{{{{zzzzz{{{z|{|{{zz{{{{{{|||z}{{|{|{{{z{{{}{{{{{{zzzzyzz{{zz{{|{z{zyzzzz{{|{{{{{zz{{zzz{{z|{z{{{{z{zzzzzz{{{z{||{z{zzz{z{{|zz|{{|{zzzzzz{|zz{{z|zz{zz{zz{{{zz{}{z{zz{z{z{{|{{{{|zz{{{zz{{{z|{{{{|{{zz{|{{{|z{{||z{{z{{{zz}||||{{{z{z{{{|{||z{|{{|{|{{z{{||{{{|{{{{{|z{z{||||{|||{{z{{{{{||{}|||||{{|{{z{{{|{{{|}|z{{{|{|{}||{}||{z{|{{{{||||||{{|{|{{|||||{|||}||{|||{{z|{{||}}||{{{{{z||||{|}|}{{{{{{{{||||{|}}{{|{{{{|{{|}|{|}|{{{{z{{{|{||{|~|{{{{{{|||{z||{{{{z{yz{zzz{{zz{|{zzz{yzz{|{{|z||{|z{{{zzz{zz{|{{zyzz{zzzz{|{zz{}{zzzzzzy{{{|z|z|z{zzzz{{z{{zz{||zz{zz{z{{|{z{{{{{{{zzzzzz{{{{{|{|z{{{{z{{{{{{{{{zzzzz{zz{|z{{|{{z{zyy{z{{{{{|{|{{{zz{zzzzz{z{{{{z{zz{zzzz{z|{|{{{zz{{{{z{{{{z{|{{{zz{zz{|{z|{|||z{{zzz{{z|{{|z{{{|z{{z{{|{{|{{||z|{{{|z{{{{{|{|{|{{{{zz{{{|{z||{{zz{{z{z{|{{{{{|{z|{|z|z||{{|{||{{{zz{{{{{{||{||{{{zz{zz{||{|||{{z|{{{{||||{}|||{{{|{{|{{{{|||}}}|zz{|{{{|}||}|{}|{||{{{||||{||{|{|z{{{|z|||}{}||{|{{|z{{||}{|||{{{{{|{|{||||{|{|{z{{{{z{|{|||{}|{{{z{{{{|{||}{|zzzz|z{{z{{{{|{|{{{z{zzz|{{{||{{{zyz{{zz{{{{{z||{{{zzzzz{{z{zzz|{{|zyzzz{{||{|{|{z{zzz{z{z{z{{|z|z{zyzz{zy{z{z{{z{{zz{zz{z{{z{zz{zzzzxzzz{{{{{zzzzzzzzyz{{{z{{{{zzzzzzzz{{{{{{||z{zzzyzzzzyyz{z{{{zyzz{yz|{z{{{|zy{{z{zz{{{|{{|yyzz{{z{zz|{zz{z{{{{{zyzz{z|z{{{|{{yyz{{{{{{z{{{{{{{zzy{{z{|z{||{{z{{{zzz{{{|z{||zzz{zz{{{|{{{{{|zz{{z{{z|{z||{||zzzz{{{{{|{|z}|{{{{{|{{{{|||{{{||zz{{z{{|{|{{{|||{{zz{{{{|||{||{|{{{{{z{|||||||||z{{{{{z}|{|{||||{{|{{{{{{{|||||||{{{{{|{||{||{|{zz{{{|{{{|{{|}|{{{y||{{|{{|{{|{{z{{zz|{|||||z{||{|{{{{{{|{||{{{z{{{{{{z{|{{|{|}{{yzy{zz{{{|{|{{|{{{{zzz{{{|{|{{{{||z{zzz{{|{|z{{zz{z{{z{{z{{{zz{{zz{{{z{{{z{|{{{{z{|{{{{z{{{{{{zzyzzz{z{|{z{{|{z|yz{yzzz|{{{{z|{z{{yzzz{{zz{{{|zzz{zzzzyzzzz|z{{z{z{z{yz{|{|{{|{zzzzzzy{zz{{{{|{{zzz{|{{{{{||{{y{{z{z{{zz{{|{{|zz{zzyz{{||{{||{{{{{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{zz|z{{{{||||||zzzzz{zz{|||{{|zz{z{zz{{}|{{{||z{{{z{{z{{{{z{||{z{{zz{z{zz{z{|{{{{{|y{z{{z{z{|{z{{z{zzz{{z|{{|{z{zz{z|z{z{z{|{{|{|zz{yz|{{{||{{|z{zzz{{{{{{z{{{zzz{{yzz{{|z{{{{{z{zzyyz{}{{{{{{{zzzzzzz{{z|z||{{{zz{z{z|{{{{{|}{{{z{y|z{{{{|{{|{z{{{z{{{|{|{{|{||{zzz{|||z{||||{z{zzz{{{|{|{|}z|{{{|{{{{{{{|{{|{{|{{{{|{z}{{|{|{{{|{{|{{{{|{||{|{{{{{{|{}|{||}||{|{|{{{|||||{||{||{||{||}{{||||}{{{y|||{}{{||||}{{{|{{{|}}}}||||{{{{{|{}{||||}||{{{||{{|{||}}|||{{{||{z{{||}}|||z||{z|z{}|||{{|{||{zz{||{|}{{||{{zz|z{zz||z{|{{{{zz{z{z{{|{{{||{{zz{z{y{{{{{{{z{zz{{zzz{{{{z{}|{{|zzzzz{{{{{|{|z{{z{zzz{{z{z{z{{{{zzzzz{||{{|z{{{{zyzzz{z{z{{z{z|{zzzzyzz{{|{{{yz{zzyy{zzz{{||{|zzyzzz{{zz{|{|{zzzz{yyzyz{{{{{{|zzy{{zz{{{{z{{{zzzz{zzzz{z{{{|{{z{y{z{z{{{{{z||{z{zzz{z{{{{{{|{|{{zz{zz{{|{|{|{{{{{{zz{{z|{{{|{{{z{zzyz|||{{{||{{z{{z{{|{{{{{{{|{|{{z|{{{||||}{{{z{{{|{{}z{{|||{{{|{{{{{|{||{|||z{{|z{{{|{{||{|{{|{{{{{z{{|{||||{{||{{||{|}{||||z|{z{{||{|||||||z{{||{||{|}{|{||{{{|{|||||||}||{|{{{{{{{|{}|{}|{|{{{{{{{|{|||||{|{|{z{{|||||{{{z{{{{zz{{|||{{{|{z{{zzzzz|{{{}|zz{zz{z{z|{z{||{|{z{zzzzzz{{{z{||{z{{zzzz{{|{||{{{{zzzz{z{{{{z{{{{z{{{{{{y{{{{{{{z{zzzzzyz{{{z{|zzz{zzzz{z{z{|z{{{z{zy{z{zz{||{{{zz{{yzz{z{|{{{|{|{z{zzzyz{zzz{{{{{zzz{zzz{z{||{|z{z{yzz{|zzz{{|{{{zz{{z{{{|{z{|{{{{zzz{{{{{|{{{|{z{z{z{{z|{{{{{{zz{z{zzzz|{}}|{{{{{z{{zz||||z{{{|{zz{{{z{||{{||{{z{{{{{{|{||{{{|{{zz{{{|{{{}{|||{{{{|{zz{|||{{}||z{{|{{|||{|||||{{|{z{{|||{|||{|||z{|{{{|}{|||}|}{{z{{{|{||||||||{z{{{|{|{{|{|||{{{|{{{||{|}||||{{{{{zz{{|{|||}{|z{z{zz{{|{|{{||||{z{{z{|||||{{|{{zzzzzzz{{z{zz{{z{{{zzz{{z{{|z{{zzzzzzz{{{zz||{{z{y{zz{{{|{z|z{{{{yzzzz{zzz{{{|{zzzzzzzz{z{{{{z{{zzzzyz|{{z{||{{{zzzyz{z{zzzzz{yzz{zy{zzz{{|{{{{zzzyzyz{{|z{{{z{{{zyzzz{{{{zz||zz{y{y{z{{z{z{z{z{{zz{zy{{z{{{z{zzzz{zyz{|{{|{{z{{yyzzz{{z{z{{{{{z{{zzzzy{z{{{{{{zzzz{zz{{{z{|{{|{{zzzzy{{|{|{z{{zz{yzzz{{|{{{|{|z{z{yzz{{{|{|{{z{{z{zz{{{|{||||{z{{{{{{}{{}z||{{{zz{zzz||||{{|{}z{z{{{z{}||{{{{{{{{|||{{{{|||}}||{{{{{{{|||{|}|{{{{{z{{||||{{|{{{{z{|{|{|{{||}|{||z{|{{{|{|{{|||z{{{{{{{{{{|||||z{{|{z{{|||{}|{{|{zzz{{||}|{{||z|{yzzzyz{|{{|||z{zzzz{z|{z|{|{{{zzzy{{z{{{|{{||{{zzy{zzzz{{zz|{{zzzzy{y{|{{{{{{zzz{{{{zz{{{{{|{zz{zzzzz{{{zz|zzz{zzz{{z{z{z|z{|{zzzzz{zz{{{{{|z{{{zyzyzz{{{{{|{zy{zyzyzz{{z{{z{{zz{{zyzz{zzz{z{zzzzzzzz{{z{z{{{{yz{{zzyz{z}|{{{{zz{yyzz{{{{z{{}{y{z{{{zz{z{{|{{{z{zy{zz{{{|{||zzzz{|z{{|{{{{{{{{z|z{{{{{||{{{|{|z|{{|{{|{|{|{||z{z|zz{{{{}{}||{{{zz{{{|{}{z|{{|{|{{{{{{|{|{{|||{z{||{{{||z|{|||{|{{{z{{{{{||~||{|{z||{||}|{|{|{|{|{{{|}|||}|||||z{{{{zz{|{{{{||}{|{|zz||||{||{||{|{{{z{|{{{{|}}|{{{{z{{||{{|}|{|z|z{{{|{||{}z{|{{z{zzzzy{|zz{{{zzyz{zzz{{{|{{||{z{zzz{zz{|{{{{|{zz{{zz{{{{{{{|{{zzzzzzz{z{z{{{|{zzz{z{y{{{{{{|{|z{{{zz{{z|{{z{{zzz{zz{{{{{{{{|{zyz{zzzzz{{{{{{{{zzz{yzyy{{z{|{y{{{y{zzz{||{z{{z{yzzzzzzzzz{z{{{zzzz{zzy{{z{z{{{zz{{zzz{{{{z{||{zz{z{zz{z{|zz{||{z{{yz{{{{z{{{{|z{{{{zzz{{{{{|{{z{{z{{{zz|{|{||{{{{zz{zz{{|||||{{{{{{z|z{|{{{{{{{{{{{|{|z{|||||{z{|{z{{{{|z|{}|{{z{{zzyz{|}{|{}||z{z|zz{||{{||{}{{{z|{|{{||{||||}{{||{z|{|{||||}}{{|{{{{{||{{|||||{{{{{{{|{|||}|||{{{{|||||{||{}{|{{z{{||{|{|{{||}z{{{{{{|||||||{{|z{z|{{}||{|{{{{{{{yz{z|{{{{|{|{{zyyy{{z{{{{{|{{zzz{zz{z{{|{||zz|{zzz{zz{{{{||{{zz{{{z{{{z{|{|zz{zzz{z{{{{z|||{zzzzzzzz{{z|{{{zzzzzzzzzz|{|{{{|{z{zzz{{{zz{{|z{z{zzzzzz{zz{{{zz{zzzy{z{{{|{{{|{z{z{y{zz{zy{{{{|{{z{z{zz|{z{{{{zzyy{zy{yz{zz{{|zzzz{zz{z{{{z{|{{z{{{zzz|{{{{{{{{zz{{{zz{{{{{|{{{|{zzzz{{|{|z}|{zz{{{zz{||||{{|{z{{{{{z{{|||{||||{{{{zz{{|||{|||{|{{{{{z|||{{|{||{{{{{{{{||{{|}{{{{{|z{z||{{}|}z{||{{{{{{|||}{}||{z|{{||{|{{|||}|{||{{{{{|||z|}|}{{|{{{||{|{||||{|z|{{{z{|{|}{||{||z{{{{|{{|{}|{||{z{{{{{{|{{{||{{||{z||{{|}|{z{z{{z{{zz{{|{{||{{{yyzzzz{{{{|{{zzzzzzzzy{z{{z{{{{{z{{zyz{{{{{z||{{zzz{{z{{{{{{z|zyz{z{{y{zzz{{{{z{zzzzzzzz{{{{{{{z{zyzy{{{z{{zz{zzzzzzzyz{{zz{{y{yzzzzzzzz{{{zzzzyzz{zzxz{{{{zz{zz{zzyzzzz{{{z{{{zzzzzyz{{zz{{|zzzzzzzyz{z{{z|{{{z{{zyzzzz{z{{|{zyzzzz{z{{{{{|{{{z{zzzzz|{|{|zz{{|{zzyz{z{{{{|{{zz{{{zzz{{}z{{|{{z{|{{zz{{{z{{{{{z{{{{z{|{||z{|{{{{{{{{{|||{}}||{{{{{{{z||||{|||{|{z{{{z{{{{{{{|{{{|{|{{}|{}{|}{|z{zz{z{{||{{}}{|z{{{|z{{|||{|{||zz{{{{{z|{{{||}{{{{{{{{|||{}||}{{|{{{{|{{||{|}{||zz{z|{{|{||z{|{{|z{z{{|{||{{{z{z{{{{{z{{{z{{|{{zz{zz{y|{{{{{{|{zzz{zzz{zz{|{|{z{{{{zzz{{{{z{{|{z{zzz{zz{{{{{{{z{zyz{zzz{|z{|{{{{z{{zzz{{|zz{z{{{z{{zz{z{{{zzz{zz{y{z{z{|{z|{{{|z{zyzzzzz{{|{{{zzzzzzz{z{{{z|{z{zzzzzzyz{z{z{{{y{{zz{zzz{{{{{{{zy{z{z{{{z{zz{{{{{{zz{z{{{||{{{{zzzz{z{{z{{{zz}{{{zzzz{{||{{{|z}|{{zz{{{{{|{|{{{{{zz{zz{{{{{{{{|{z{z{{zz{||{{z}{{{{{z|{|{||||}||{|zz{{{z||z||||}|{{|{{{z|||}|}|{{{{{{{{{|||||}}{{{{{{|{{|{{{||{|}{{||{{z||||{{|||{{|{{{{{{}||{|{||{{{{{{||{{||}|{{|{|{{|{|{|||}||||{{{{{||||{|||||z{{z|z{}|}{||||{|{{|{||||}||{|{zz{zy{y{{|{|{|{{{{{zzz{{{{{{{|z{z{zzzz{||{z{{{|{z{zyzzzz{{{z|}|{{{{zzz{{{{{{{z{|zzzzzzy{{{z{||{|{zzzzzz|z{{z{{{{z{yzz{z{{z{z{{|{z{zzzzz{z{z{|{{zyzz{zyz{{{z|{{{{y{{zz{{z{{{{z||zzzz{zzzz{|zz{{|zzz{{z{zz|z{{{{|z{{z{zzz{z{z{|{{{zzy{{zz{{{{|{{|zz|{yz{{{{{z{|{{{{{zzz{{{z{{z||{{{{z{z{{{|{|{|{{{{z{{zzz{|{{{{|||y{{{{zz|{{{{|{{|{zzz{zz{|||{||{{{{{{{{{||{|{|||{{{z|{{z|||{{{||{{{{{|{{||||||{{{{|{{{{{{|{z|}}|||z{{{{{|||}{|||{{{||{z||||{{|||{{{{{||{{|}{{||||{z{{{{{{|{{{|{|{|z{zz{{{|{|{|||}{{|{{{z{|||{{|{{{{z{z}|{}~|}||z{{zz{{zy{{|{z{|{zz{{{zz{{{{{{{{|{{z{z{{z{{{z{{{|{yzzz{z{{z{{{z{{|z{zzzzz{{z{{zz{zzz{z{zz{{{z{z|{{zz{z{zz{{{z|{z{{yzzyz{z{zz{z{{|z{zz{zyyy{{{z{{|{{z{{zyzz{{{{{{{{{zyzz{{z{zz{{||zzzz{y{z{z{{zzz{{zyzz{{zz{y{{z{{y{{{zzzzzzz{{{|{{zzz{zzz{z{|{{{|{|y{zz{y|{{z{{||{zzzy{zzz{|{|{|{{{{{yyzyz{{{{|{z{z|z{zzz{{{{{{|{{{{{z{{{{|{{{|||{z{||z{{|{{|{}|{{{{z{{||{|{}{{|||{{|{{z|{||{||}||{z{z{z{|{|{||||z{|{{{{{{}|||||{|{{|{|{|z||{||}|{{|{{{z{|}|{|{|||{{{{{{||{|{||}||{{{{{{||}|||{{||{{{{|{{{{|{|}||{{{||{{||||||||{zz{{{|{|{|}~z{{z{{{z{zzz|{{zz{{{z{zzzz{{{|{zz{{z{zyzzzz{{{{{{{{{z{yyzzzz{{{{{z{{zzzzzzyz{z{z{z{{zzzz{{y{{zzz{{{z{{zyzz{z{{{z{{|{{zzy{yzz{{z{{z{{{zz{zzzz{{{z{{{z{zyyz{zz{z{{{{zzzz{zzyyz{{{{{{z{zzzyz{yz{zzz{z{{zzyzzzzzzz{{|{|zz{zz{zy{{zz{{||{zzzzz{{z{||{{{{{zz{zz{z{z{y{||{zzz{zzz{{{|{|{z|zz{y{zz{{|zzz||{{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}|}}~{{{{{zz{{zz{{{{{{{{z{zz{{{{{|{z{{||{{zzyzzz{z{zz{||zzzzzz{z{{{{{{|||{{zz{zy{{{|{{{|{z{{z{zy{{z{{{{z|zzyz{{{{{{z{z|{{zzzz{{z{|{|{{{{zz|zzzz{{{{zz{{zzzzzz{z{{{{{|{{{z{{zyzyy{{|{{||{y{z{zzyzz{{{z{|zzzz{zzzyz{z{{z{|zyz{{zzy{{{z{{{{{{zz{z{{{|{zz{{|zz{z{{{{{z{|{|{|{zzzzz{{|{}|{z||z{{zzz{z{{{|{|{{|{{zz{{{{{{z{{|{{{z{|{{{{{|z{||{{{z{{{|||{||{{{{{{{{|{|{}|{|{||{{{{||{{{|{{|{|}{|{{|{{z{}}||||}}||||{{||{{|}|||{{{{|{{|||}|}|||||{{{zz{{||{|z{{{{{||{{{|{|{{|||}|z|{|{{{|||}|}|||{{{{{{{{{{|}{{|||z{|{z{{||||||{{|{{{z{|{}{~|{|{zzzz{{z{{|{{z|{{{zzyzzzz{{{{{{|zzzzzzzz|{{{z{{{{z{zz{zz{|z{{z{{{z{z{z{y{|{{{{{{zyz{z{zyz{{{z|{||{z{{yz{|{{{z{z{y{{zzzzzzzz{z|zzzz{zzzy{z{{{{{|{zz{zzzzzz{{{{{z|{yzzzzyzz{{{|{{zyzzzzzzz{z{zz{zzzyzyzzzz{{z{{{{{{z{{zzzyzz{z{{{|{zzz{zzz{{z{{{|{zzzz{zz{{|{{{{||zzzzyz{z|{{{{|{{{zzz{zzz{{{||{|z{{|{zz{z{{|{{z|{z{{|{{zz|{||{{{|{z{{z{{{{{||{||{{{{{{|{{z|z|||||{{{|{z{{||||{{|||{z{z|{{|||{{||}{{{z{{{{{||||}||||{{z{z{{|{||||{|{{|{{||||{{}|||{{{{zz|{{|||||||{{{|{{{{}{|}|||||{zzz{{{||{{|||}|{z{{{{{{|{|||||{|||{|{|}|}~~{{|zz{{{{zz{{|{{{z{{z{zyyzz{{{{{{|zz{zzz{zy{{zz|{}z{y{{zzzy{{z|z|{{{{zzz{zz{{z{{{{{zzzz{zzz{{|z{{{{zzzz{z{z|{{{{zzzzzzzzzzzzz{{{{{{yzzzzz{z{zzz{z{{zz|zzzzzzz{{z{{{{{{zzz{z{{{{{{||{zzzzzzz{{{z||{{y{zz{{zz{zzzz{|zzzyzz{zyzzz{{{|{zzz{z{{zz{{{{z{{z{{z{y{y{{{{|z|{{{{zzzz{{{|{z|{|{{{z{{{zzz|{{{|{z{zzz{{zz{{{{{||{{{{z{{{{{{z{|{|{{z{{z{{{|||||}{{|{{{|{{|||}{|||{{zz{{{z|{||{||{{{{{{{z{||{|||}{{{{{z|{{||{{||}|{z{z{|z{{||{{|||{{z{{z{{{{{||{|{|{{z|zz||z{||}{|||{||{{{|{{{{|||{{{zz{|{{{{|{|||{{z{{{{{||||{|{}{{{{z|||{}||~{{|zz{z{zzzz|{zz{{{z{z{{z{z{z{z{|||{{zzzzzz{{{|{z{|{{zz{z{{{{zzz{||{zzy{z{zz{|{z{||zz{yzzzz{{|zz{|{{y{z{y{yzz{{{{{{{z{yzzz{y{zz|{{{zyyyzy{zyzzzz{||z{z{zzzzzzzz{{{{z{z{yyzy{z{{{{zzzz{z{zzy{zzz{{{{{{|{z{y{z{{zz{|{z{zzzzzyzzz|{{{{zyzzzyyz{{{zz{{{zyzzy{zzz{zz{{{{zzzzz{z{{{{|{|{{{z{{zz{zz{{|{{{{{{zz{{z{{{||z|{{z{{yz{zz{{{{{|{{zzz{{z{{{||{{{{|{{{{{{{{{{{}{|||{{{z{z{{{||{{|{|{zz|{{{{{|{{{||}|{{{{{|z{|||{||}|{{{{{{|||{|||{|{{{{{{{{{|{||{{|{zz{{{{{{{{||{}{{{{||{{{{{|{{{{}z{{{{z{{{{|||{}{|{{|{{{{{||{}|{|{{{{{{{||}}|}{z{z{zzzyzzz{||{z{{{{zzzzzz{{|{{{z{{zyzzz{z{z{{{{||{y|{z{z{{|||{{|{|{{z{yzz{{{|z{{|zzzz{{zyz{{z{{|{{{{zzyz{z{zzz{{zzzy{zzzy{|{{{||{yzzzzz{zz{{zzz{z{z{{zzy{{z{{{{{z{z{zz{zzz{zz{{z{zzzzzzzyz{z|z{|{{z{zzzzyz{z{{{{{zzyzzzzyzyzz{zz{zzzz{zx{{{{zz{{{{{z{yz{{{{z{{{{{z{{zyzzzz{{{|||{{y|z{z{{{|||{{{{{zz{z|zz{|||z{|{{{{{|zy{{{{{{{{|{zzz{{zz{{||{{|zz{{z|z{{{{{||||}{{{{{{z{||{{|{{|z{{z{{{{||{|{{}|{z{z{{{{{||{|}|{|{{||{{{z|{||||||{{{{{|{{{|{{|{|{{{{{{||{{{||||}|||{{{z{||{|||||{{z{{{{|||{||{{||{|zz{z{{}||{|||{|{{{{{{||}}}{{{yzz{zzzz{{|{{{{}{zzz{{yzz|{{{{{|z{{zz{y{z{{||{|{{{{y{zy{zz{{{z{|{{{z{z{z{z{{{{{|{{{zzz{y{}{{{||{{{yzzy{{{z{{z{{{{{yzz{yz{z{zz|z{{{y{zzzz{z{{{{|z{z{zzzzzz{{{||{zz{z{z{yzzz{zz|{{zz{zyzzyyz{zz{zz{{z{zyzzy{z{z{{|z{zy{{zz{{{|{{{{{z{z{zzzz{{|z{{{{z{{z{{z{z{{{{z{{|{z|{{{{{||{|{|{z{zzz{z{{}{||{{zz{zz{{zz|{{|{||{{{{{|z{{|||{|{|{{{z{{|{|||||}{|{{z{{{||||{{{|}|{|{{{{{{{{{{||||{{{{{{{{||{|{||}{{|z{{|{{||{}{|{{z{{{|{{|||||||||{|{{||||{|{|{{|||{{{zz{{|{||{||||z{|{{{||{|||{|z||{z|z{{{||{|||||z{{{|{{|||{{}{{{{{{{{|{}}|}{{|{zz{{z{yz|{{z{{|{{z{{z{zzz{{{{{|zzyzzzyz{zz{{{{|{y{zz{zzzz{|zz{||z{yyzzzz|z{z{{{{{yy{{{{{{{z{z|z{zzzzzzz{z{{z{zz{zz{zzzzz{|zz{{{zzzyzyzzzz{{{z{{zy{yzzzzz{|zz{z|{zzzy{zzz{y{{{|{z{{zyz{zz{zz{{{zz{{zzzy{zzz{z{{yz{{zzz{z{z{{{z{{{{zz{yzz{{{|z{{|zz{zzy{{{{|{{|{{z{z{zz|z{{{{{{{|z{z{{z{{{{{{{}{{|z{z{{z{{{|{{{|z{|{{zz{{{{{z{z{{z{zz{z{z|{|{|{{|z{{z{z{{||{|||{||z|{{{zz{{||||{{|{{{|{{{{|||||||||{{{{{||{|{{}|||{{{{{{z{{|{||||{{|||z{{}||||~{{|{|zzz{{||{||{{|{{{{|{{{{{|{{|||{|zz{{{{{|||||||z|{{{{{{{|||{z|{{{|{|{{|||}}|{{{zzz{{zzyz{{{z{{|y{zzzzzz{z|{{{|{{|zzzzzz{zz{{z{{||zzy{z{{{z{{{{{zz{{zz{y{{{z{y{|{{zyzzzz{{{zz|{{zyz{zyz{zz{{{{z{zzzyz{zz{{z{{zz{zzzzzzzzz{{zz{|zzz{zzzzzz{{z{z{{z{{yz{zy{zz{z{{{z{yyzz{zz{zzz{{|{{{yzyzyzz{{z{{|zzzz{zzzz{zz{{{{{zzz{z{{{{{{{{|{{z{zzz{zzz{z{{{{{zz{zzzzz{z{{z||{{{zzzzz{{{{z{|{{z{z{zzz{|{{{z||zz{{zz{{z|{z{|{|{{z|{{{z{{|}|||{{{{{{|{z{|{|{{||{{z{{{z{|||{|{{{{{{|{{{{{||{{||{z{z{z{{{{{|||||}{||{{{{{{|{}{|{{{{|{z|{{||||{|{|{|z{{|{{{|{{}{||{{{|{{|{|{|{|{|{{{{{{{{|{|{|{||||{{{{{z{z{{|{||{|z{zzz{{{}|}||{{{{yz{{z{|{|{|{{{{z{z{{zz|{{z{{|{z{{{z{zz{{{{{||{}{z{z{yz{{{{{{|{{z{zz{{zz{|z{}{{{{|{{yyzzzz{|{{{{{{zzzzzz{|zzz{{{{zzzzzz{z{{{{||zzz{{zzz{{z{{{z{zyz{{{zz{{{{{{z|{{|yzz{z{{z{zz|{{{zzzy{zzz{z{{z{z{zzzzyzz{{{{|{{zzyzzzz{{z|{{{|{{z{y{z{z|{z{{{|{z{z{zzzz{{|{||{|z{{{z{{z{{{||{{|{z{z{{zzz{{{z|||z{{{zz{z{{}{{{||{{|{{{z|{|{{{{||{{z{z{z{|||}|{||z{{{{{{{||{|{|}||z{{|{{{|{||{|||{{{{{z{|{|||{|{|{{{|{|||{{||}||{{||{|{{|{{{|||{|{{{{{|{{||||{{||{{{z{{{|z|||}{|||z{{{{{|||||{}||{||{{{{|{{{||||}||{{z{{{{{||||||{{{|{{{||||{{{{{{{zzzzzzz{{{{{{zzzyy{zzz|z{z{|z||zzzzz{y{{zzz{|zzz{zzyzz{{{z{{z{{{zzyz{zz{{{|{{|z{{zzzzzz{z{z{{|{z{z{yzzzzzz{{|z{{zzz{zzzz{z{{y{{yzzzzz{{{z{z{{zzzy{y{yzzzzzz{|{zzzzzzzy{z{zz{{{z{{zzzzzyzzy{|z{zyzy{zy{|{z{{{z{zzzzzz{zz{{zz{{|{yyzzz{{z{z{z{||{zz{zy{z{z{{{z{{zz{zzzzzz|{||||{zzz{z{zy|{{||{|{{z{zzz{{{{{{z{z|{z{{z{z{{{{{|{{{{{{{|zzz|{|||{{{z{{{z{|{|{{{{||{{z{{{|z{{|{|z{}||zz{{{{z|{||{||}z|{{{|{{|{||||||{zz{{||{{}{|{{}|{{{{{{{z{||{{{|{|{zz|{{{{{{{||||{{{{{|{{||{|{|}|{{{zz{{{{|{|{|{|||{|zzzz||{|||||{{|zzz{z||}~{{z{z{z{zyzz{{{{{{{{z{{zzzzyz{{z{{{{zz{yzzzz|zzz|{|{{zzzzzzzz{{{z{{|{{zzy{zzz{{z{{z{zz{z{{zyz{z{{z|{{z{zy{zzz{{z{{z{{zzz{y{z{zz{zz{{{zzzzz{yz{{{{{{{zzz{{{zz{{{z|z{{{zzzzzzzzzz{|{z|z{zzzzzy{{{zz{{zzzyyzzyzyzz{z{z{zzz{{zyzz{z{{{|{zz{yzy{y{{{{z{{|{zzyzzzz{zz{z{{|zz{y{{z{{{z{{|{{{{{zz{{{{{{zzz{z{z{z{z{z{{{z{{|z{{|zz{yz{{{{z{|{{|{z{{zz{z{|{|{|{{{z{z{{|{{||||||{{zz{y{|||{{|{|{z{{{{z{||{|||||{{{|z{{{{||||{||||z{z{{{{|}|{|{|||||{|{{||{{}{{||{{zzz{{|{|{|}{|{{{|{{{z||{|||||{{{{{zz|||{{{|||{{z{z{zz|||}{|||{{{z{{{{{{{|||{|{{{{z{|z{||{{|{|z|zz{zzz{{z{||{|{zz|z{z{{||||{{||{|z|z{{{|{|{z|{{{|{z{{z|{||{|{}{{{z|||{{||z{{{|||z|z{zz{{{{||{{|{{|{{{z{z{|{||{{{z{zz{{|{{{{{{z{{z{z{zz|{z{{{|{{{|zz{{z||{|{|||zzzz{z{zz{z{{||z{z{{{{zy{{{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{y{z|||z{{}{z{{zz{{z{|z|{|{{{{{zzzy{{{{{{z{{{z{z{zzz{{|{|{{{{{z{zzzz||{{z|z|{zz{z{{{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|{}||||{|{{{zz{{|z{{|{|{|{{{{z{z{z{z{{{z|{z{|zzz{z{{|{{{|||z{z{{z{{{{|{{|||{{z{z{{{|{{{|||{z{{{zzz{{{{{{|{zzz{zzzz{{|{z{|{|{z{zzz{{{z{{{{|zz{{|zz{zz{{z{{{{z{{z{{{z{|z{{{|{{z{zz|z{|{|{{z|{{zz{{{z|{zz{{|{{|z{z{{{{|{{{{{{z{{{{zzz{zz|{{||z{z{zzz{{{|{{|{{z{z{{z{z|||||{||z{|{z{|{||||{|||{{{{{{{{{{|{{||{{{{{{{{{{||{{||{{z{{|{{{|{|||||{{{{{|{{{|||||{||{{{{{||{}|{{|||||z{{{z{{|}||||}|{{{{|{{{{|||}|}}{|{||||{|}|||}|}||{{{z|{|||~||}}|{||{||{|}}||}|||{{{||{||}{|||||}|||||{}||{}}|}||}|z|{{|{|||||}}{{{{{||{{||||}||||{{|{{{{}||}{|{|{{{{z{{{|{|{{|||{zz{yz{{{|{|{}|{{{z{{{z{z{{{|||{{{{{{zz||}{|||{{|{zz{{{{|{|||{|{{|{{{|z{|{z{{}{{{{{{{z{{{|{{{{{{{{{{{z{{||{{{|{{{{{zzz{{|{{{{|{|{{{z{{{|z{{|{{{z|{{{{zz{{||z|{|{{z{{zzz{{{z{{{||{{zzz{z{|{{{|}{||{{{{zzz{{{{{{{{{z|zz|{{|||{{|||{{{{{{|{{|{{||}{{{{{z{||||{|||||{|{|z{{{|}|||||{z{{{z|{{|||||}{{{{{{{|{{||{|||{|{z{zz{{{|{}|||||{{||{|{{|{||||}||{|{|{z{|}||||}|{|}|{||}||||||}||||}||||||||}}||{z|{||{|}|}|||}}|{{|{||||{}||}}{||||{||}|}|~|}}||zz|{}|||||||||||{|||{{||||{}}}|{{{|||||||}|||||{|{|{|{||||}z|{z{{{z{{z{{|{{{||{{{zzz{{|||}|{{{{z{zz|{{{||{{{}{{zz{{{||z{|{{{|z|{{zz{{{|{||||{|{{|{{{{z{{{z{{{{{{{{{{z|z|{{{|{{}{z{{z{{{|{{{{||{{z{{z{{z{{{{{{|{{{{{zz{{{{{|||{{{{{zzzz{{{{|{{{{z{{{z{{||z{{{|{|}z{{{|z{{{{z|{}z||zz{z{{{{{|||{{z{z{{|{{{{{{{{||z{{{{{|{{|{{|||{{{{{{z{{{||z|}||{{|{{{{|{{|||||{{{z{{{z|||{{|||{{{z{{z{{{||{{{|{|{||{z|{{{|||{{|||{{{{{||{|z||||{{|{{z{|}}}{|{||{||{{|{||{{{|}|}{||||{|{||||}|}|{|{|}{|{}|||}~|}{|||{{|}|{||||||{|{{{||{|{|}|||||{{{{|{|||||||}||{{{{{|}{|}||}}{{{||{{{|||~{{||{||||{|{{||{}{|z{{z{{zzz{{|{|{|{{{{z{{z{||{||||}{{zz{{zz{||{{{||{{{{{{{{{|{{{{||z{{yz{zz{{{|{{||{z{{{{{{|{{{{{|{zz{{{z{{z{|{|||{{y{z{zzz{{{{{{{|zz{{|{{{{{|{{{|{{z{{{{yz{{{{||{}{{{{z{zz{{{|{|{{{{{|{{{z{{|{||||{|{zz{{zzz{|{}|{|z{y{{zz{{{{{|}{{{{z{z|z|{{||{|||{||{zz{||z||{||{|||{|{||}{{{||||{|{|{{z{{|{||}|{{z{{|z{|||}}|}||{z|{{{{|||||}||z{|{{|z|{||||}|||{|{{{|{||}||{}}||{|{{{{||||||}{}y|{{|{|}}||}}}||{|||||{{||{||}~|||{|||{{|||||}}{{}||{}||||}|||||{||||{{|}{{~|}||{{{|{||}||}||}||{{|||{{||||||}||{|{{|{{|||}{|}|{|{{|||{{}||{{|{{z{zzz{{|z|{{|{|zz{z{{z{{}|{{{{{|{zz{{{z|z{||{}||{|{zzz{{{{{|{||{{|z{z{z{z||{|||z{{z{z{z{{{{|}|z{zz{z{{{{|{{z{z{{{{zz{zz|{{|||{|{{{z{z{{{|{|{{{{{{z{z{zz{{{z{{||zz{zz{{z{{{{{{{|{z{z{zz{z{{{z{{|{{|z{zz{z{z|{|{|{zz{{{{z{{{{|z{{{{{z{zy{|{{|{||||z{{z{{{|{{{||||{|{{z{z{{{{|||||{{{{{{z{{}{|{{|||z|zz{{{{}{{{||{{{z{z{{z||||{||{|{{z|{{{{{|||||}{{|{{{{{|||{{}||{{||{|{{|||}|||||{{|{{|||||{{}}|{}}{|||}{|{{||}}||{{{||{}|{||}{|{||{{{{{|||}}||||||{||{{||{|}|||{|{||{{|{|{}|}}}|{|{|{||{||{|}}}||z{{|{{{|||{|{}}{|z||{{}{||}{{|{{{z{zz{{{|{{{||z{zz{||{{{|{{|{{zzzyz{z{{{{{|{|{{z{{|{{{z{{{{||{|z{zzz{zz{{{z|z|{{{z{{zz{{{|{|{|z{{{{{{{||{{{{{{{{z{|z{{{{z|y{||{zz{{zzz{{{{{{|{{{{zz{{{{|{{|z}|{z{{z{{z{{{{z{|{{{z{{z{z{z{{z{z{{{z{y{{zz|{|{{{|{zzz{{zzz{{|{{|{{z{{{{{{|{{||{||{{{z|{{z|||||||}{{z{{{z{{{|{{{||{{{zzz{{{|z|||{|{{{{{{{{{||{{{||{{{{{{{{|||||{{||{{{z{|{|{}}|}}|{z|{{{{{||{}{}|||z{{{|{{|{|}{||||{{||{{{|||{||||z{||{||{{|{{}}}}||z|{{||{}|}|}}||{||{{{|||{|}|}}}{{{{z}|{{||}}|}||{|||{|||{||}}}{z|{{|{||{{||{}}||||{{|{{{|{||}|{{{{{{{{|}}}|||{{{z|{{{z{{{{||||{|zz{{{{{|{|||||{{{{{|zz|z{{{|{|{{{{{z{{{{|||{|{{{{{{{zz|||{{{||{{{z{{{{{||{||||{{{{{{{z{|{z||{{{{|{zy{{z|{|||||z{zz{{{z|{{{{{|z{zz{{{{{|z{{}{{{{z{zz{zz{{|{z{}}{{{zzzzz{|zz{|{{{{z{{zz{z|{{{{|{{z{{z{{z|||z{|||{{zz{zz{{|}z{{|||z|{{|{||||||{}|{{{zz{{{||{|{|{|{{{|{{|{{}|}{||||{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|{{{{|{{|{{zz{|z|{{{{{{|{z{z{{{{{{{{|{{|{{{{z|zzz{|{||{|{{{{zzzz{{|}{{||{zzz{yz{{{{{{|||{{{z{zzzz{{{{{|{{{{{{{zz|{{{{|}|}{z{{z{z{{{||{|}|{{|z{{|{|{{||||{{|z{{z{{{}{{||||z||{{|{|||{|}|{|{||{|{{{|||}||{{|||z{|{{|{||}||{{|{|{{{{|||{|||{{|{{{|{|}|}{||}{{||{{|{{|||}}||{{||}{{{|}{{{||{|{{{{{|{|{|||||||{|{{||{|}||}||||{}||{{|}|{|}}|}||||||{|||}|||}}|{{|||||{||}}|{{{|{{|z|{||{||}}}{}{|{}{|{||||||}|{{{|{|{|}|}}|||{{{z|zyz{{|||z{{||{{z{{z{|z|{|z|{{z{{{zz|{{{{|{{{zz{z{{z{{{|{|||{{{zz{zz}|{|||z{|{{z{z{z{|z|{||{{{{{{z{z{|{{z|{{{zzzz{z{z|z{{||{{zyz{{zz{{z{z{}{z{{zz{zz{{|{|||{zzz{zz{z{|{{{{z{z{{{{z{yz{{{{z{|{|zz{zz{{|{|||{|z{z{zz{yz|||{{|{{{{z{z{{{||||{||{{{{{z{z|}{{{||||{{{{zz{{|{{{||{{{zz{{{||||||{{{{{{{{{{z||}||||{{{{||z|{|{|{|{}{||{{{{{{{}}|{{}|{|{{{{{{{}{|||||{|}|{|{z|||}|{|||z||||{{||||{}}}{{|{{{{|{||||}||}|{|||||{||}}}|}||}||||{}||||}||}{{||{||{|||{}||||{||{{{|}}~||}}|||{{{|||{||}}||||{z|{{z|||}||}||||{z{{{|{}|~|{{{z{{z{{{{|{{{{{{{{z{{{zz{{{{{|{{z{y{{{zz{{{|{{||{z{{{{yz{z{{{|||{{{z{{{zz{|{{{{{{zzz{z{{{{|z{{|{{z{{{z{{z{|zz|{zzzzyz{{{{{{{{{{|zzzyz{z{z{{{{{|{z{zyz{z{z{{{{|{|zzzzy{{{z{{{{{||{{{{zz{zz{zz{z{|zzzzz{{zz{{{{|{|{z{z{|zz{{{{|z{|{{{{{{{{{}|{{||}{{{{{z{{z{{{{{{|z{{z{z{{|{{{{||{|{{{|{||{{{|{|{|{z|{{{{{{{||{||{{{{zzz{{{}{|{|{||{{z||zz||||{{{{{|{{{{{{||}}|||}||{|{{{z||||||||}{|{|{{{||{||{}||||{{{|z{}|||||}||||{{{{|}||}||}|||||{{|{|{|||||||z{{{}z{||||{}|||{||{|{{{|}}||}{z{{{{||{{{|{||}||{{{{{{||{}|||||{|{{{z|||{z||{|{{z{z{{{{{{{{{{|{z{{yzz{z{{||}|{{{{{{|{{|{{z{||{{{|{z{zz{||{z{{{{{|zz{zy{zz{{{{|{zz{{{{z{|{{{||{{{{{|{{{{{|{{{{|{{{{{{{zz|{{{{||{{z{{z{zz{{|{||{{z{zz{zz{{|z|z}{{{zzzz{zz{{{{{||{{{z{zz{z{{|{{{z{{{{|yzzz{{{{||{{z{{zzzz{z{{{|||{z{{zzz{{}{||{||{{{{{{{{{{{z{{||{{{{{{z{{{{|{{|||{|{{z{||}{{|}{|{{{z|z{{|||{{{}|{{{{|{{{|{{{{|{|zz{||z{z{|}}||{{{||}{{{||||}{|}|{{{{||z|{}}|}|{}|{|{{|{||||||||||||zz|||}}|z|||||{{{||{{}}|}}|||||{|{{||}||}{}||{{{|}||y|{|{|||||{{{||{{}}|||}|}|||z{{{|{|{||||}}{|{|||{|}|||{|}|||{{|||{|{||{{{|z{z{z{zz{|{|{|||zz{{{{{{{|{|{{|{{||z{{{{{{{||||{z{{{zz{z|||{{}|{{{{{{|z|{{{{{{{{z{{{z|z{{{{{||{{{{{|{{{{{|{{||{z{zz{|{{{{{{|{{{zzzz{{z{|{{{{{||{z{{{{z{{|{{{{{|{{|{z{{{{{|{{||||{z{{z{{z||{zz{|{{z{{{{||{z|z||{{{{z{{zz{{{|{|}||{z{zz|{{|||}|||{{{{|{z{||{|{||{{|z{{|{{||{||||}|{{{|{z{{|}|||||{{|{{zz{{{}||{}{{{{{{{{z||{||||z|{|{||{||||}|}}{{{{{{{{{||}}||}}||{{}{||{|||||}{|{{{|z{|}|}|}{}}{||{}|{{|}|||}|}}{{|||{|}|||}}}}}z{|{{z{||}||}}||{|||||{{|||}||}||{|{||||||}}||}|{{{{|{{|||}|}}}|||{{|}{||}|{}}||||{|{|{|}}}|{{{z|{{zz{z{{|{{||{{{zzzzz{{{{{{{||{{z{zz{|{|{|||{|{z{{{{z{{z|{{|{|||{zzzz{|z{{|{||{{{{{z{{{z|{{{|{|{{{{{zzz{||{|||{z{{zz|{z{{{{{{|{z{z|{zzz{{|||{|{{{{{{zzz{z{|{|{{z{{y{zz{{{|{{{|{z{z{zzz{{zz{{{{{{{{zzzy{{{{|||||{{z|z{{{{{{||{|{{{{{z{{z||{|{||{{|{{z{{|{{{||{|z{|{z{{{|{|{{{||{{{{{{{{{}|{||||z{||{zz{{||||{}{{|zz{z|{{||{||{}|{|||{{{{|||||{{{||{{{||||||||}}{{{{|z|{{{{|{|{{|{|{{{{{||||||||{|||{{|||}||||}{}|||{|{{|}|}|||}{|{|{{{|}|{||}|}|{{{||||{||||{|||||{||z|}}|}|{||{{{{|||{||{{|}}|||{{|{|{}|{}||}|{||z{{{z||}}}{{{{{{z{zzy{||||{||{zz{{{{{{|{{|||||{{{{z{z{{|{|{{|{zz{{{zz{{{{z{|{{{{{z{zz{{{|{|||{z|zzzzz{z|{|{|{|zz{zzzy{||{{{{{{{{{z{{z{{zzz|{}z{zzyzzzz|{|{|{{{zzzzzzz|z{{{z{{{{|{{zzz{{{{{||{z{z{zz{{z{{zz|z|{{{{zzzz{|z{||z{z{{z{{zz{z|{||{{{z{{{zz{{z{{z{{{zz{z{zz{|{|{|{z}{{{|z{{z{{{||||{{{{zz{{{{||{{|||{{{{{{zz|{|||{|{{z{{{{{{{{|{{||{{{z{{{z{||{|}|||{{||{{{||{{|{|}|{{{{|{{{||||{}}{|{|{{{|{{}{||}||{{|{{{|{||{|||||}|{{||{{z||||||||||{{|z{{|{|||{}|{{||{{|{|{||{}||{{}|{{||||||||}||{{{{{{|{|{|{}||z{{{|{{{|{||{||{{{{{{{{}}|}||{|z{z{z|{zz{{z{||{{{{zz{{|||z{||z|{z|zzzz{{{{|{{||{zz{{{z{z|{{z|{{{{{{z{z{|{{|{{|{||{{yzzzz|{{{||||z{{{{{z{z|z{{{{{{{zzzz{z{{|{{{zzzzz{yzzz{|{{z|zz{{zzzy{{z{zz{||{{z{z{yzz{z||||{{{zz{z{zz{{z||{{z{{y{z{{z{z{{{{{{{{z{z{z{{{{z{{|{{{{{z{z{|{{z{{|{zzz{z{z{|{||}|}{{{{|z{z{|{|{|{{{{{{{{{zz{z|||||{z{{{{{z|||{||||zz{{{{{{|{||z|{{|{z|{{{|{|||||{|{{{{z{{{}|{|{||||{{||zz{||}||{{||{|{{{{{||{|{|||||{{{|{||}{|}|||}||{{{{{||}||}|||{{{|{{{{|{}{}|{|{||||{{||{|}}}}|||{{{|||}|}||||{|||{{z{~{{|{|{||{{{{|{|||||{{{{{{|{{z{{|}||{|z{z{z{|z{{{|{{z||{|{{zzzzz{{||{{|{z{{z{{zzz{{z{|||{{{{zzzz|{|{|{|{|{{z{z{{|{{{{||||zz{{{zz{|{{||{{{{{z{z{{{{||{|{{zzz{z{z{zz{{{{{|zzzyz{{|zz{{|z{|zzz{z{zzz|{{|{|{{{{z{zzzz{{{{{||{{z{{z{{z|{{zz|{{z|zzzzzz|zzz|{{{zz{yz{{{z|{{|||z{{{{z{|{{}{{}||{{{{{{{|{{|{{|{|z|{{|zzz{|{{||{|{{{z{{{{{|||||{{{|zz{zz||||{|{|{|{{z{|{{z{{{{|||{{|{{{|{||||||}}{{|{{{{{|{|}|||||{{||{{|{|{|{||{|{{{|{{z|}{{|}||||||{{|{||||||}|||{{{{||{|||}||}}{|}{{}||||{}||{}z{}|{|{|||{||}}}||||{{{{||}|}}}}{{{{|z||}|}}{|}|{|{{{|{|}}|{||||{|{{{{{|||}|{|{{z{{zzy|{{|{|||{y{{z{z{{||z{{{||{z{{z{z{|{z{{||||{|{zzzz|{{{{z{|||{z{{z{{{||{|{|{z{{{z{{{{{{{{{{{z{z{{zz{{|{z||{{z{{z{zz{{{|{|{{{{{{z{z{{{{zz{{{{zzzz{{{z|{{{||{{{z{zzyz{{|{{{|{{{z{{zzzz{{{{{{{{{zyz{{z{|{{{|||{z{{|yzz|||{||||{{{|z{{{{{{||{|{|z{|{z|{{{|{{{{||{{{{{{|{{|{|{{{{{{{{z{{{{{{}||{zz{{{|{z{|{|||||||{{{{z{{||{{||||{|{|{|{||{|}}|{z{{{{{}||}|}}|||||{|{{z{{|}|||}{{{{|{|{{||||}||||{|||||{|}{||}}||{{||{{||||}}|||||{|{|{{}||}}||||z||{|z|||||{|}||{|z|{{{}{{||}|||{|{|{{|||||||}||||}{{|z|}|{||}||{|{|{|{|||||{{{|{zz{zzz{{{|{{{{z{zzzz|z{{|{{{|||zzz{{z{||z|{{{|{z{{{{zzz{||z|{{{zzz{z{z{{{|{||{{z{{zzzz{|{z{|{|z{{z{{{z{z|z{|{{{{{zz{z{{{{{{||{{{{zz{{z{{y{{|{{{z{yzzyz{z{{{|{{{z{{z{z{{|z|}{{|zz{{zz{{{{z{{|{{zz{z{zzyz{z|{|z|zz{zzz{z{z{||z{{z|{z{{{{{{{{z{{{zzzzz{|{z{|{||{{{{{z{z{z||{{{|{||{zz{{|{{|{|{|{{{{||{{{z|{{|{|}{{{{{|zz{||{{{{|||{|z{{{{||}|{|||{|z{|{z{|||}}||||{|{{{{{||}z|{|{|zz{}|{{{|{|||}}{{{{{|||{{|}}||{|{{|{{||{||~|||||{||{|||}||}||}}|{{z|{{|||}|||}||{|||{|||{|}|||}{{{|{{|{{{||||}||{{|{{|z|}{||~||{z|{|{{{||||z|||{zzzzz{{z|}{{|||z{{{{zzz{|{{|||z{{{{z{z{||{{|{{{{{|{{{zz{{|||{{|z{zzzz{z{||{z|z{{{z{z{{z{{|z|{{{{z|{{{{z{{{z{|{{{{{z{{{{z{{{{{||z{{|z{{z{{|z{{|{{{z{zz{z{{|{|{||zz{zz|zz{{|{{{|}zzz{zz{y||{{||{||{{z{z{{z|z{{{|zzz{|{{{z{{zz{{||{{{{z{{z{}z{|z|{{{{{z{{z|{||{|{|{{{|{{{|{{|{{{|||{|{|z{{{|{{||{|{|{{{{{z{|{||{||{{{|{zzz{{{zz|{{{{{{{{{{||{||~|||z{{{{||||||||}|{{|{z{{|{}||||~|||||||z{||||}}}}|{{{{{|||}||}|}}}|{|{||{|}{||||}{{|{||{{}|}|{|}||{{||||{|||||||}|{|||{|{|||||}||||{z|{|{|{|||}|{|||z{z|||}|||||}{z|z|z|{||}|||{{{{zz{z{z|{{{z|{|{zz{{z{z{{{{{{||{{zzzz{{{{|{|||{|{{{{{{{||{|{{{{|{zzz{{{{{|{||{|{zzzz{{{{{{|{||z{{{{z{z{{{{{z|{|z{{zz{yz{z{{{{{{{{z{zz{{{{|{{{|{{{{{zzzzz||{||{{{{|{{zzz{{{{z|||{z{{zyzzz{||{{{{{z{{z{yzy|{z{|{{{|{{{{{z||{{|{{|{{{z{z{{{z{{{{{|{{{z{z{{{{||{|{|{|{zz{|z|z|{{||{{|{{|{{{{{{|{{{}|{{|{{{z|||{|{||{{{|{{|z|}|{z|{{|{||{{|{||||}|}|{|{{|{|}||||||||{{|{||{{}{{|||}{|{||||{{|}||||}|{|||||{{|||||}}||{{|{||{{||||}|}|{{||{{||}}}}|}||{{{{|||}|{|||}|}|{||{{|||||{|}|||{zz|{|}|{}||}|{{{||{{{|{||||||}{{{{}z{||{||{||z{zz{z{z{{{z{z{|{{{{{z{z{z{||{|{{|zz|z{z{{{{{{|{{||zzzzz{|||{{{{{{{zz{{z{{{|{|{|{zz{{z{zz{{z{{|{|{{y{z{{{{{{|{{|{|{zzzz{{{z|{{{{{{z{yz{z{|{{{||{zz{zzzz{{{|{{{{{z{zyz{z{{{{{||{|{z{z{{{zz{{{{|{|z{zz|{zz{{{{z|{{zz{z{zz{{{|z{|||{{{z{zz|{|{|{|||{{{{zy{{||{|{{{{{z{{{{{{{||{{||{{{{{{z{z{{{|{||{{{{|{{z{|||{|||{|{|{{{{z{|{{||||{zz{{{|{|{|||||{{|{||{|{}{|z{|}|{|{{|{z{{||{|||||{{{{{{{|}{{||}||{{{|{||||{|{}}|||{{{|{|||}}||}||{||{{|}||{||}|||{{{{|{{{|||}||}|{|||||{}{|}}{|}{|{{z{z{||{}||{||||z|z{|z|||||{{z|||{{{{|||{{|{{{zzz{z{z{|{||{{{{{{{{z{{{{|{|{{{z{|z{{zz|{z{{||{|z{{|{{{{|z{{{||z{{{zz{z{{{||{|}z{{zz{zz||{{{{{{{z}z{zz{|{{{z||||{{z{{z{{{{{{{{{zzz{zy{zz{{{|{{{{{z{zzz{{{{{{z{{{{{zz{z{{{{z{z|{{|{{{zzz{{{{{{{{z{zy{{z{{{{{||{|zzz{{zz{{{{|{||}{z{zz{|z{|{z{|||{{{zz{z|}{{{{{||{{{{z{z{|||{||{|{{{{|y|{{||||{||{z|{{{{{{||{|}}|{{{{{{zz||}{|{z|{{{{{{{|{{||||||{{{{{{{{}|{}|}||{{|{|{|{||}|||{{|z{{|{z{{||{|}}|{{{|{|||{}{|||}}|{{}{|{{|||{|||||{||||{{|||||}}||||{{|{||}}{|||||{{|||{||}||||}}{|{{{||{|}||{||}{||{{|z||}{{{|}{|{{{|{{||||{{{{{{{z{zz{zz||{|{{{{{{{{z{z{{{{{|{{{|{{{zzz{z{|z{|||zz{{|{z||{{{{}|z{|zzyyz{||{||z|{zzz{{z{{{z{||{z{{{{{z{{{{|{{{{{|{{zz|{z{{z{z{{|{zz{zzzz{{{{zz|{{zzzzzz{{{{z||{{{|{{{z{z{||{{{|{{z{{{z{{{{{{z|z{z{z{{z{{{|{{{|{|{z{{z{yzz{|||{||{{zz|{{z||{|||||{zz{{z{||||{{|||{{|{{{{|{||||||}{{{{{z{{{|||{}||{|{{{{{z|||{|||{z{{{{{{{|||{||}{{{{{|{|{}|{}|}|}{{{{{|{||||||||{|{|||{{{|{|||{}~{{{||{{{|}|||}|||z{|{}|||{||}||}|{|{{{|{{||}{|~{{||||{|{||||||||{{{{{|{||||{||}||}||{||{}{|||}}}{{{{||z{{|||||}|}{|zz{{{{|{||||||{{{{|{{|||{|{{{{zz{{{z{{{|{{{{|{zz{{{z{{{|{{|||{{yz{z{{{}||{|||{{{{{z{z{{{{z{{}{{|{{z{{{|{||{|{{{|z{{zz|{{z|{{{{|z{{zz{{{|zz{||{{{{{|{{z|z{{|{z{{{z{{|z{{{{{{|{{{{{zzz{{{{z{||z{z{zzz{z{|{{|{{{{{z{zz|z{{{{{||{{{{zzy{z{|{{|||{z{{zz|{{{|{|{{|{{{z|{y{||||{||||{z{|{{|{|{|{{|||{{|{{z{|||{||}{|{{|{{{|{{|||{|{||{{{|{{|{||||{|||{||{|{{||{|{}|{||||{{{z{||}|}{||||{|{{{||||}|||{|{|{{{|||}|}{}}|{{{|{{z||||||}|{{||||}||}|}|}}||{{||{|{|}}|}|}||||||||||||}}|}{|||{|{|||||||~}|||{|{|{{}||}|||}z{|{||{|||}|{||}}{|{z|{{{||}|{}||||{|{{{|||}|{z{{{{zzz{{{{||{{|}{{{zz{{{{y{{{{{||{{{{{z{{z{{{|||zz{z{zz{z{|{z{{{|z{z{z{z|z{{{{{|{{{zz{zzz{|{{{{{{z{{{z{{{{|{z{{|{z{zzzzz{{{{{|{{zzz{zzz{{{{z|{||{{{{{{zzz{{{{z||{{{zz{z{{{{{||{{zzz{zz{z{{{|{{{z{{{{|{z{||{{{|{{z{z{zzzz|{{{|||{{{{{{yzz{{|{{{|{{{{zzz|{{||{{|{|z{{{{z{{{{|{{z}|{{z{{z{z|{||{||{z{z{{z{{{||{{{}{|{y{{{z{||{{{||{{{{{{{{|{}}{||||{{{{{{{{{|||||||z{{||zz{|}{|{||}|{{{||{z|}|{|}|{|{{z|{||{{{|{|{}|||{|{|z||||{|}||{|{{{|{|{}|||||}{|{}{{z|{{{|}}}|{|{|{{{|||||}}||||z{|{|{|{|||||{|zzz{{{{{{|z|}||||{|{{{|{|}z{{{{|zzz{zy{{|z|{{{{{{{zzy{{{{{{{|{{yzzz|zz{{z{|||{|z{z{zyy{{{{{{||z{{zz{z{|{{{{|{|zz{z{zz{{|zz{{|{{zz{z{z{zzz{{{{{{{zzz{|{z{{|{{{{z{z{zz{{{{z{{|z|z{z{z{zz{{{{{{||{z{{y{{{|{{{{|{|{{{z{zyz{{{{y{z{{{z{{zzzz|{z{|{{{z{z{{z{|{{||{{{|{{{{z{z|{{{{{{{{{{{{z{{|{z|{|||{{{z{|z{{{|{{||{{{{z{z{|{|||||}}||{{|{{{{{{||||||{{|{|z{{|{|{||||{|{{|||||||||}|{{|||{|{||||{|}}{|{|{z{z|{|{|||{||{{{{{{|}|||{||||{||{{|||}|}||}{|{|{{{{{||||}}}{{||{{||{|||{|||}{{{|{{|||||}|}}}||{|{||||{||{|{||{{{{{{||||||||||{{|{{z{||||||{{{{{|z{{||{{{||{{{{zz{{zz|{z{{|{{{z{yzz{{{|{{|{||{{z{z|z{{{{|{}||{yzz{yz|{{|}{|{z{{{z{zz{{||{{}|{|{zz{{{z{{{{{|{{{zz{{z{{{{z{{{{z{{zy{zz{z{|{{{{{zz{{zzzz||z{{{|z{z{zzz{|z{|||{|{z{zz{z{|{{|{|||{zzz{zzy{{{z{z{{{{z{{zz{z{{{{|{{{{{z{{{zz|||{{||{{{zzz{{{|{{z{|}{{{{{z{|{|{{{{|{z{{{{{{{{{||{|{{{{{{{{|{{|{||}}||{|{{{{{||}||{{{{{{{|{{{{{|{||{{|zz{|{{{||{||||z{|z{||{{{|||{}||{{{{{{{{{}|{||}||{{zz{|{|}{||{}}{{{|{|||}|||}||}|{||{|{|||}|}{|}||{|||z|||}||||||{{||{{{{||}|||}||z||{{{||||||||{|{|z{{{||}||||||||{{{{{|||}||||||||{{|{|||}{{{{{{zz{y{zz|{|||{|{zz{{zz{|{|{{|{}|{zz{{{{{{{z{||{|z{{{{z{{|{{z|||{|{z{zzyz|||}{||{zz{{{{z{||z{{{{{zzzz{y{{{z{zz|{z{{z{{zz{z{{z|{|{{{zzzzzz{|{{{|{{{{zzzy{{{}z||{{{{{|x{y{y{||{|{|zz{z{{yz{{|{{{{zz{z{zzzzzz{{|{|{zz{|z|{{{{{|{{{|{{{{{z|z|{{z|{||{{{{z{{{||{|{|{}{{|{{{{z{|{{{{|{|z{|zz{|{{{|||||{z{yzz{{{||{|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{{zz{z{{|{|{|{z{zy{z{zzz{{z{|{zzzzz{zz{{{{{|{z{{{{z{{{{z|z{{{|{{|yzz{zz|{{{{{{{zy{zz{zz{z{{|{{{{z{{zzy{{z{|{{{z{zz|{z{z{{{z{{{|{{zz{{|{||z||{{{z{zz{y|{{||{|{|{z{z{{z{{|{{{|}}}{{{{{z{{{{||{{}|{zz{{{y{|{||{|{{zz{{{||||{{||{|{{z{{{{{{z||}||}{{|{{{}{|}||||}||{|||{z{{{||||}{}{|{||{{{}}{}|}|{|{{|{|{{||}|{}{}{{{{|{{|}||||||{|{{{||||}}}{|}}||{{{{|||}||{||}||{{{|{||{|||}||{{{{{|{z|{{{|||}||{||{{{||||{|}}{|{{{{{z||{||{{{z{zz{{{{{z{{||{|{{z{z{y{{|{{{|{|zzz{{{{z{y{|{{{{{{{{{{|z||||z{{|{zz{{{{z||{{{{{|{{zz{{{z|{{{zz|{zz{zzz{z{{{{|{{{y{{zzz{z{{z{{{|{zzz{{z{zz{|{zz{{{{zzz{z{{{|z{|{{{{{{zzzzz|{{{{}|zz{zzzz{{{{|{z{{z{y{{zzz{{{{{{{{{z{{zz|z{{{|{{||z{{{{z{z|{||{|||zz{{{zz{{|z||{|{z{{{zz|{{{{|||||{z{{{zz{{|||{|||{zzzz{{z|{|{{||||zz{|{z{{{|{||}}{{|{{{|{{|||||||z{|{||}||{{}{||}zz{|{||{||{{{}|}|{{{{{||}|||{|}}||{{|{|{}|||}}|||{|{{|||{|}|}{|||{}|{{|||}|{|}|}|{|{|{{||{{}|{|||{{{||{||||}|}|}|{|z}z|{{|||||}}}{{||||{|}|||||||{|z|{{{}{|||}{||{{{{{{z|{{|{|{|z||z{y{{{{|{||||{{zz{{|z||z|{|{{{|{z|{{{{|{{{||{z{{zzzyzzz{|{|{||{{z|z{{{{{{{{{{|{{{zz{{z||z|{|{|{zzz{z{z{{{{{{{z{{{zzzz{z|{z{{|{zz{z{z{{|{|{|{{z{|yzzz{{{{{{{{{zz{{zy{z{{{{{z|{{{z{zz{z{|{{{{{|{z{{z{zz{|{z{{||{z{{zz{{{|{{{{|||zz{zz|{{{{|{{{|z{{z{z{{{{{{{{z||{|{{z{{{{{|||{|{|{{{|{z||{|{|{|{{z|z|{{{{|{||{|{{{|||{{{|}{}||{{{|{{{{|||{|||}|{||{{{{{{{|||||{}{|{|{{{}}}||}}|}||{{{|{|{||||{|||||{|||}|}||||}||{|{{{{|||{|}}|}|{||||||||{||}|}|{|||z{||||||}|{|}{|{{{{|||||}|{{{||||{|||||{|}{{}{{|{{|}||{{{{zz|{|zz{z{|{{{||zzzz{{{{z{|{|{{|{{zz{zz{||{|||||{{{{zz|{{{|{z{{|{{zzzzzz{{z{{{{|z{|{z{{zz|{{{||z{z{z|zzz{|{|{{{{{z{{zzz{{zz{{|{z{z{zz{zzz{{{{{|{{{{{zzzz|z|{||||z{z{zyz{z{{{|z||{z{{{yy{z{z|{{zz{{zz{zz{||{|z{|{zz|{{|{z{{{{z|{|{{{{{z{z|{{{{{||{{{|zz{{{zz|{|{{{{{{z{{{{{|{||{|{{{{{z{z||}{{}{{|z{{zz|{{{{||{|||z{|{z{|||{{{{|||{|{{{{}||{{}|||z|y{{|{{|||{||}|{{|{{{{{|||}|||||{{z{|{{}|{|{||}|||{z|||{{{}~}|{}|{|z|{{||}|}||}||||{{|{|||||}{||{{||{{{{}||{|||{|{||{|{|||||||}|{|z{{|{{||{||}}|zz{|{|{z|||{|{|||{{z{{z||||||{{{{|zzz{z|{{{zz{z{{{z{z{{{z{{|{|{{{zz{{z{{|{z|{|||z{{{{{{z{{{{|{|{zzzz{zz{|{{|{{{{{zz{z{z{zzzz||{|{z{zzz{|{{{{{{|{{{z{zz{{z{|{{{|z{z|{zzz{{{{{{{{z{{{{{{{{|{{||{||z{{z{zz{z{{{{||{{{{zzzz{{{y}{{|{zz{{zz{{|{{{|||zz{|{{z{{{{{{|}{{{{{{y|z{|{{zz|}{z{{z{|zz{{|{{|{|{|z{{{{|{{{{{{{|{{|{y{{{{{|||}|{{z{{{z{|}|||{}||{{z{{z|{||{{}||{{{{{{{{{{{|||||{{{{|{{{||{||||{{{{{{|z{{|~|||||{{|{{{|{}}}}||}}{|{{{|||z{||||||}{{{{|||||||||}|||{{{{|{}{|||}||{{|{|}{||||}|}}|}{{{{{{|}|{}}}~||}{{{{z{}|||||}|||{||{{|||{{|{|{||{{{{{z{{||{|{|zzzz{{zz{{{|{{z|{z{zzzzz{|z{{||||{{z{z{z{z{{{||{{z{zzzzz|z{{|{{|{{{zzzzz{{|{{{{|zzzzzzzzz{{zz|{z{zzz{z{{{{{{{z{zz{zzz{z{{|{{z{z{z{z{{zyzzz||{}{{zzzzz{z{{{|{{|{{{z{z{zzz{z{{{{|{{{zzzzy{zzzz|zz{zzzzzzzzz{{{{|||zz{{{zzz|{|{{{|{{{z{{zzz{{|{|{||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{zz{z{z{{{{{||{z{z{z{zz{{{{{|{|{{{zzz{z{{z}{{||{{{{z{{{{{|{||{{|{{zzz{z}z{{|{||z{{z{{zyz{{{{|{z{z{{{zzz{{{{z{{{{zz{z{zz{z{z{{{|zz{zzzzz{{{|{{|zzyzzz{zzz{|{{z{|{{z{zzzz{{{|z|}{{zzz{z{zz|{|z{zzzyzzz{zz{|{{||{zzz{{z|yz{{{{{{|{|z{{{z|{|{{{{|{}{z{zz{z{|z{{||{{{{{zzzzz|{|||}||{{{z{z|{{|||{{{||{{{|{{z{|~z{||{{{{{{|{{{||{{||{|z{{{{z|{|||{}|{|z{|z|{{{{|}|||}{{{{|{{{{|{||||||{|{{|{{|{||}}||||{{{||z|||}|||||{{{|{{{{|||}|}||{{|z{{{||}}||}{|{{{|{|{{{|||||}}{|{|{{{}|{}{|||{|zz|z{{z|{}||}{|||{{||z{}|||{||{||{{|{{z{{{|{{{{zzzz|zz{{{{{{|{{{zz|zzz{{{|z|||{{{zz{zy{|{{{{|{{z{{{{zz|{|||{{{{{|z{{zz{{{{{{{{{{{zy{{y{{z{|{|{{{{{zzzz{{{|{{z{{{{zz{z{{z{{{{|{{zz{{z{zz{{{z|{{zzz{z{z{z{{z{{||zz{{{{zz{{|{{{|{zzzz{{z{y{z|{{z{{zzz{{z{{{{{{|z||{{{{{{y{{|{{{|{zz{z{{zz|{||{||||{z{zz|zz{{|{{{{{{{{{{{{{|{{{{||zz{{{{{{||||||{{z{{|z{{{||{{|||{z{{{|{{||||{||{||z{{{||{{{||||z|||{{{{{{|{}|{|||{{{||{{||{{||||{{{z|{{||||{|{}}|{|{{z{|}|{|||}|}|{||z{{||||}{||||{z{|{|{||}{|||||zz|{|{{{|||}}|}{{{|||{|||||{}}{{{}z|{{z||||{}}|||||{{|z||{|{|||{z|{{{{{{{{{|{||{z{z{z{zz{{|{{}||{z{{zzz{{|{{||||{z{{{y{{{{|{{{|{z{{{y{{z|z|z||{{{{zzz{z{|||||||z{{zz{zz{{|{{{|{{zzz{{{{{{{{{{{|{{{zzzzz{{{{{z|}{zzzzy{zy{|{{z{{{yzzz{{{zz{{{{|{{{zzz|{z{{|{{{{{|{z{yz{z{{z{{z{{{{zyz{{{z|{||{{{z{{{{{zz{{{{z||{{z{{{{{|{{|||{|{{{{{{{{z{{zz{|||{z{{{{|{||{|{|{{|{|{|{||{{|{|||{|{{{{{{{{}||{{|{{|{{{{{{||{{|{{|{||{z|{{|{||{|}}{|{|{||{||{}{||||{{{{{|{{||||}|||{{{|||{|}}{||}{|{||{|{|{|{||}{|}{{{|{{{{}}||}{|||{|{{|{}|||}}||||{|{{{|||||||{|||{}||||{{||||{||{||{||{{|{||{||{||{{z{||}||||||{{{|{{{{|||||{{|{|zzzzz{z{|{{{|{{zzz{{zz{{z||||{{{zyz{zz{z{{{|{|z|{zz{z{{{{{zz{{zzz{{z{z{{|z||z||{z{z{{zz{|z{|{|{z{{{zyz{{{|z{{zz{zz{z{yz{{{{{{{{{y{{z{z{{{{{{||zz{zyzzzz{{z{{{{{z{zzzzz{{{{z{{{z{zzzzzzzz{z{{|{{{{z{z{z{{{|{|{{zzz{{z{z{{{||{|{{{z{|z{{{{{{{{{{z{{z{z{z{{{{z{||{{zzz{{{{{||{{{|{{|z{|{{{{||||||{{zy{{zz|||||||{{z{{{zz|{||{|{{{|{{z|{{|{{||||||{{{{|{|z{}{|{|||{{{z{{z{||{|{||||{{{{{{{}}|||||}{{{{{|{|||||||}||{|{{|z{|~{|||}}|{|||{{{{{{||}{}|{}{|}{{{|{{{{||||||{||{{{}{|||}z{{z|{{{{{||}|}{||{{{{{{{|{|{|||{z{||z{||{|{{{|{z{yz{|{z{|{zz|}{zzzzzz{{{}|{|{{|||zz{{z{{{{{{|{|{zzz{z{{{{|z{zz{{{{zzzzz{{|{{{z|{{{{z{{z{{z{{||{{zzz{zz{{{|{{{{{z{z{{zz{{{{{{|{{{{z{zzzy{|zz{{{|{z{zyzy{{z{{{{{|{{zzzzzz{{{{{||{zz{z{z{{{zzz{{{{{{zzzz{z{|{{{{|{{z{zz|z{{|{|{|||{zzz{{|z{{|{|{{|{z{|zz|{|z{||||}{z{{zzzz||}|{|}|{{z{{{{z||{{{{||z{z{{{zz{||||||{{{{{{{{{|||{|{||{{{{{{{{||||||||{{{{|{{|{||}|}||{{{{{zz{}}|{||{|{z{{{{{z|}|||||||{||{{|{||}|||}|||{||{{{||}|{|||{z||{||||||}||||}|z{{||{||{|}||||{{||{{||||}||||{|{{|{|||{|{|||}}{|||z{{||||{||||{{||{{{{{}||{{zzzz{zzzz{{{{{{{{z{{z{{{{|{{{{{{z{z{zzzzz{z{|{|{||{zzzzz{{|||z||||zzzz{zy{{{{{{{|z{{zzz{yz|{z||}{{{{{|zzz{||{z|{zzzzzzzzzz{{{{{{{zz{{yzzyz{{{{{|{z{z{{zz{{{{z||{{z{{{zzz{z||{|{|{{zyz{zzyz{{{z{{{}{zzzz{{{{{|{{|{zz{{{{{z{{z{{{||||z{{{{zz{{{{|{{{z{zzz{{|{|||||}{{zzz{{z{||{||{|{|z{{z|{{{|{z|||{{{{{{zz||{|{|||{z||{|{{{||{{{{|{z{||{{{||{||||{{{{{{z|{||{||{|}|{||{z{z}||||}|{{z{{{{{{}}{||{}||{||z||{{|{{|||||{{{{|{{{}|}||||}{{{{z{{}|{}{}|}}|{{{|{{{}||||||||{{}{{{|{|}}|}|{|{z{{||{|||{{||{|||z|{{z|||{|||{{|{{{{{{||||{|}z{{z{zzzy{zzz{{{|zzzzzy{{{{{|{{zzzzzz{zz{{{|{{|{{zz{z{{y{z|{z{||{{{{zz{z{{{zz|{{zzyzz{{yz|{{{|{{zz|{{zz{{{{{{|{zz{zz{zz{{z{z{{{z{zzzzyzz{{{{|{{{z{{{{{zzz|{{{{z{{zz{zzzz{{{|{{|{z{{zyzzz{{{{{{zzzzzz{z{{z{{{z|{{{{{z{{zz{|z{{||{{{{z{{z{|z{|}|{{{z{zz{{z|{{|{{||{{z{zzz|{{|{{{|}z{|{{z{z{||{||||{z{{z|{{|{}|{{|{{{{z{{{{{}||{|{{{{{{{|{z{||{}|||z{z{{{|{||||{|||{{{{|{z{|||||||||z{{|{{{{|{||z|||{|{{}|{|{|||||||z{{z{{|||}|{}|z|{|{{{||{}|||}|~|{{{|{{{||{||}||{{|{||{|}||||{|||||{{{||{{|}{{}|{}{{z|{{||}{{}{|{|{{zzzz||||{||{zzzz{z{{{||{{{||zzz{zz{z{z|{{|{|{{zzz{z{{{|{{{{|{z{{zzz{z{{|{{||{z{zz{{z{{{{{{|{zz{z{z{{z{{{{|{{{{{zzz{z{{|z{{{{{{{zz{z|z{|z{z{{zzz{zz{z{{{{{{||{zz{{zzz|{{z{{|{{zzzzzz{{|{||{{|z{z|z{zzz{{{{{{|{zzzzzzz{{{{{||zzz{{{{zz|z{|{{|||{{yz{{{{{|{{|||{z{zz{{{{{||{|||z{|{{z{z|||||{}|{{|{{{{z{}{||||||{{{{{{{{|||||}{{{z{||{|{}||{{||||z{{{{{|||}{}||{{|z{{}{{{||{{||{{{{||z{}|}}||{||z{{||||||{{{||||{{|{{{{{{{}||}}||{{{|{{|}|||||||{||{|{{||}|{||}|{{{|{{{{{|||{}}}|{||{{}|}{||}||{{{{|{{{{|{|||||{|{{|{{{||||||}{|{{{{{{{|{{||{{zz{zzzzyz{|{{{{{|zz{{{zzzz{|{z||{{|zzzyzz{{z{z{|{z{z{zzz|z|{|{z||z{{z{z{zz{||z{{|{z{z{z{z{{{{{|{z{{{zzzxz{{z{zz{{{{zzzzz{{{z{{{{|zyzyzzzzzz{{z{{{{zzzzzz{z{|{{{||{{{zzz{y{{{z{z{|zzzy{zzyzz{{{{|{z{zzzzzz{{{{{|||{z{zyz{{{{{{{|||zz{{zz{{{||{{{||zz{z{y{{|{|{{{}{{{{z|{{{{{||{||{|{{|{zz{z||}{{{|z|{|{{{z{|{|{{{|}{z{{{{{{|{{||||{{z{{{{{{{|||{{|{{|{|{|z||{|{{|||{{|{{{{{||{{}||z{{z{{|{}|||||~}z{{{{{||||{{{||||{{{|{{||||}||}||{{|{{{{||{||||{{|{|{{|{{{|||{|||{{||{{{||||{|||{}{{{{{{||||{|||{{|{z{{{{}||||{{{|{{z{{{{z|{{|{{zzzzzzz{|}{{|{||z|z{z{y{{{z|z|||{z{zzzz|{{{{{|||{zz{{{z{{{{z{{|{z{zzz{zz{{{{{{{|zz{{{{{z{{{{{z{z{{|zzzy{|{|z{{{|z{{zzz{z{zz{{{{{zzzzzzz{{zz{{{|{{{z{zz{zz{{|{{{}zzzzz{zy{{{{{{||zy{{{{zz{zz{|z|{{zzzz{{{z{z{|||{zz{{{{z{|}{{|{||{z{z{{{{|{{||{||{{{{{z|{{|||{{||{{{zz{{{{{|{|{||{{{{{{{z{||||}{|{z{{{zz{{||||||||||{{z{{|||{||||{||{|{{|{|{|{|{|{|{{{z{||{|||||~|{z||{{{||{||||||{{{|{{{|}|||{}|||{{z{{|||||||{||{{|{||{{}|{||||{{{|{z|{}|}}|}|}|{{{|{{|||||}|||||{|{{z{|||}|||}{{||{|{{{||}|||}|||{|{{{|{{}|{|||{{||{||}|}{|z{{{zzyz{zz{{{{|||{zzzyz{{z|{{{{||||z{{zz{yz{{{{|{{|yzy|{{zz{{|{{||{{|zzz{{{{{{{|{|z{|{{z{z{{{|{{|{{{{zzzz{zz{{z|{z{{{zzzzz{{{|{{{|z{zz{zzzz{{{z{|z{y{zzzz{{z{{{{||z|zzzzz}z{|{|{z||y{{{z{zz{{{{{{|{{{zzz{z{|{z{|{||zzzz{zzy{{{||||{{{{{zz{{z{{z|{|z{zzzzzz{z{{{|{{{{{{z|{z{||{||||{{|{|{|{{||{{||{{|z|{|{z||}{{|{{{{|{|{{{{||{{||{{{{{{{{{|||||||{z{|z|{{}||{|||}|{{{|{z{{||||}|||||{}{||{}||||}||{||{{}{|||{||||||||{{{{{{||}{|}}|{{|{|{{{|}|{{||{{{|{{{}{{||||}|||{|{|||||||||}}z{{{{{z||}||||}|{|{{{|}{{{{{|||{|{{{|{|z|{||{|{z{z{{z{z{{||{{{||z{zzzyz{|{z{||{|z{{zy{{{{|{{z|||{y|z{{{zz|{{zz{|{zzy{{zz{{{{||{|{{zzzz{{{{{{|{{{|zz{yz{zz|{{zz{{{{zz{{{z{{{{zz{{z{z{zz|z{{{{z{z|zzz{zz{z{{|{|{|{|{{{zz{z{{{{zz{{{{zy{z{{z{{y{{{{{{z{z{zzz{{{z{{{zzzz{{zy{{{||||{{{{z{{zz{{{|{{{||{{{z{{z|{|{||{|{{z{zz|{||{||{}|{|||{{|z{{||||{|{{{{z{{{{{|{{||{||{|zz{{{|{{{|}|{z{{|{z{|{|||||||{{{{{|||{|}||{|{{{{{|z{{|||{}|||{{{{{{{}|||{}}||{z{{{{|||{}||}}}|{|{||||||}||}}{{{|{z{{|}|{|}|}}{{||{{|||}|}||}|{|{|{{|{||}|}|{{{|{{{{||{{{||||||{||{|{{||{||||{z{zz{z{}{|{|{{{{z{zz{{{z{|z{|||{zz{{{{{|{z{{{z{{{zz{{zy{{{|{{|{|{{zz{zz|||{z{||{zzzz{z{|{{{{|{{z{z{{yzzz{|{{|{|{z{{yzy{{||zy|{{{z{{z{y|z{z|{|||zz{zzzz{{{|{{{{{{{zzzzzz{{{{|{z{{{z{zzzz{z|{|{|{{zzzz{z{{zzz{|||{{zz{{zz{|y{{|||z{zzzzzz{{z{{{||{{z{|z{z|{{{z|{|{zzz{{z{z}{{{{{|zz{{{zzz{{||{||}{{{{|zz{|{{{{|||z|{{{{zz{{|{{{{{|z{|{z{{|z{{||{}{{{{||z{{{|||{|||||{|{{{|{||||}|{{{{{|{{{{{|||}||{z{{z{{||||{||}{z{{||{{||{{||}||{|{|{{{|}|}||}}}||zz{|{||{||||||{{{{{{|}||{{{{}}|{{|{{|{|||{{{|{{|{{{{z{||{||||||{{{|{{|}{{||{}{{{|z{{{{|||{{{|{{zzz{{z{{{z{|{zyzz{zz{{{{|{{|||{{zz{{zz{|{{|||{z{{{zz{{z{||{{|{|z{zz{zz{{{{{{z{{zz{{{{{z{z|{{{||y{z{zy{|z|{{{zzzz{zz{z{{{z|zz{{zz{z{z{{zz{{{{{{z{{{{{{z{{{{{{{{z{{z{{z{z{{{{{|{zzy{{{{z{|{{z{{}zzz{z|z|{{z{{}}|{z|yzz{{{{|{zz{{zz{zz{zz|{{|{{{{z{|{zy{z{z{|{{||{{{{{{|{{|{{|{|}{{{z{zz{||||||z{|{z{{{{{||{{{||{{z{{|{{|{|||||{|{{z{{|{|{||}||||{||{|z{{|{{||||||z{|z{z{|||{|||}|z|z{{|z{}|||{}|{{{{{||{|||}|{}||{|{{{|{{|{|}||}|{|||{{{|||||||||z{{|z{|{|{{||}||{{||{{||||{|}}||{{{||{{{||{}||||{|{{{|z{|{}|||||{{zz{|{{|{{|zz{yz{{{{{zz||{z{{||{{{{z{y{{{|{|||{zzzzz{z{{|{{|}|{{{z{zz{{z{{{z|{{z{zzzzy{{{{{{||zz{{zzzzz{{{z|||{zzz{{zz||zz{|{{y{zzzzz{y{{|{{{z{{z{yy{z{{{z{z{{{{zzzz{z{z{z{|{|{{zzz{{zz{{{{|{|{z{{|zz{|{{z{{{|{{z{{zzz{{{{{{{{z{{{{zzy{{zy{{{|{z|zzzzz{z{{z{}|zy|z{z|{z{|z{|}|zz{{z{{{{z{|{|}|{{{zzz{{{{|{||||{{{{{|{{{{||{|||{z{|{z{z|{{{|||{{|{{z|{{|{}|}|z{z{{{{{||z|{||{||{{{{{{|{||{|{|}|{{||{|{z||{|{|}}{{{{z||{{||{{}||{{z{{||{|}||{|{{||{{|{{{{||{{{{||z|z{{{{{||{}||}{{{{|{{|{|{|||||{{{{{|{{{|{}{|}{{z{||{{{||{||||||{{z{z{{||{|{{|z{{{{{y{zz{{{z{||zz|{{zz{{{{zz|{{{{zz{zzz||{{{{|{{zzzz{{{{{{{z{||{{zzzzzz{{{{{|{{|yzzzzzz{|y{z||{{z{z{{{z{{{{{{{{|{zzz{zz{z{{{{zzz{zzz{z{z{{{{{{{{zzzzyzz{{{{{z||{{{{{zzz{{{{z{|{|z{zzy{z{{{{{z{{{|{zzz{{z|{{|{{{zz{z{z{{{z{{{z|{{{{{{z{{z{{{{{||{z{z{zzz{{|z|||}{{{{z{{{{{|{|{{{{{{z{zz{|{{{{|{{{z{{{{z{{|||{|||{{{{|{{||{{z{|||{{{{|{z|{||||||{{{{{{|{{{|{}{{}||{|||{|||{|||}{{|{{{{{{{|}|||||||||||||{{||||||{}{{{{{{|{|||||||}{{|{{{{}||||||||{{{||{{{|{|{||||{|||{{|||{||{|||{{{{{{z{|{||}||{||{||{||||||{}{{||{{z{{|{|{{|{{{zz{{zzzz{{z{{|{{{zzzz{yzz|{{|{|{y{zz{y{zz{z{{|{zz{z{{z{zz{{{{{{{z{yz{{{{z{{{{{{|zz{zzzz{{zz{{{{{z{zzzz{{{{z{zzz{{zzzzzz{z|{z{z{zz{zzzzz{{{{{{{{{zzzyyzz{{|{{{{{{{z{{zz{z|{|{{||zzz{zzzyy{{z{{zzzz{zzy{y{{{{z{{{{z{{{{zy{{|z{{{{{{zz{{zz|{{{|{||{yz{zz{{{{z|z|{{z{{|yz{z{{|{z|z{{{{{|z{z|{{{{{|{|z{{z{zz{{}|{{||{z{{{{{{{|||{{{|{{{z{{{{||{||{|{|{|{{{{{{{|||||{{z|{z{{z||{{{||||{{{{{{z{|{}|}|}|{{|{||{|||{}{|||{||z{z{||{|||||{|{|{{{{{|||||||z{|z|z{{|{{||||||||{{{{{{{{||{||{{{z|{zz||{||{}|{|{{z{{{{{{}{|||{z{{z{zzz}|{|{{{zzz{{zyy{z{{{{{{zz{{zzzzz{{{|{{|{zzzzz{z{{{{{{{{|{z{{{zzz{|{|z{{|z{yzzzy{zz{zz{{z{{{zzzyz{z{{{{{{z{zzzzz{{|{z{{{zzz{{{yzzz{{{{{{{yzz{zzzzz{{|{|z{zzzz{zzz{zzz{{{{{z{zz{z|{{{|z{{{zzzzyz{z{{z||{|{{{yzzzy{zzz{{{{{{{{z|zyz{y{z|{{zzzzzz|z{{{zz{{}{{z{{zz{{|||z{|{{z{{|{{z{|{{{yz|{{z{zz{zz{|{{{{{{z{{{zzy{|{{{{|{{zzzz{z{||{|||||{|z{{{{{{|{{||||{{|z{{{{|||}|||}|{{|{{{|{|||||{|}|{{{{{|{}|||||||{{{{|||||}{|||}|{|{{z|{|}|}||||{{{{|{{z{||||||{||{{|{{{|{|||||}|||{||||{||}|}{}||{z{z{{|{{|||}||{{{{{z{{|{||{||{{||{z{{{|{|||{{{z{zz{{z|{{{{{{|z{z{{zzy{|{{{{{{{{zyzzz{|{{{|{||{z{{zzzzz{{|{|||{{{zzz{z{{{{{|z{|{{zz{{z|{{{||{{{|{zzzz{|{{z{|{{{{z{zzz{{z{{{{{{{z{yz{zz{z{z{{{{{z{|z{z{{|{{|{|{{z{{zz{z|{{{||{||{z{yzzy{{{{{{{{{{z{zzz{{{{{{{|||{zz{zz{{{{|{{{|{zz{{{{z{{{||{{{{{|z{{|{||{{|||}{{{{z{{z|{{|{|{{{{|{{{z{|{||{||{{|{{{z{z||||{{||{{|{|{z{{||||{||{{{{{|{{||{||||}{{zz|{{{||{}|{{}||{||{{|{}||||}||zz|||{{{|{|||||{{|{|||{|||||}}}|{|{{{|{||{}||{||{||{{|{|||||}}||{{|{{|||{||||||||{|||||}||||{||{||{{{{{|||||||||{{{{||{{}|}|||{{{{{{z|{}|||{|{{{{{{yz{z{z{{{zz|zzzz{zz{zz||{{||z{{z{zzz{{{{{||{{{{zzz{{z{{{{|||{{{{zz{{z{|{{{{{{{zz{{{z{{{{{{{{{{|zzz{{{||{{{{zzz{{zzzz|{{{z|{|{{zzzz{z{{||||{{zz|zy{zzz{|{{{|{z{{{{{{z{{z{||{|{z{{zzzzz{{zz||{z{z{{zzzz|z{{{{{{z|z{{z{{{}{|{{|{z{{{{{z{|||{{{|{{{z{{{{{|{{z{{{{z{zzzzz|z||{||{||{{{{{{||{|z{{{{|{zz{zz{|||{{||{|{z{{z{|}{|z{|{{|{{|{{|||{{||||zz{{{{|{}{{}{|||{{{z{z{{|{|}||}}|{{{{|z{|}|||{||{|{|{{||||||}||||{|z{|{{{|||{{|||{{|{||{||}{|||||{{|{{|}||}{||}||{{|{{{||}}|||||{{}z{{{|{{|||{|||{{{{{{{{||{||}||{{{{z{{||||{{{{zz{{{zzzz|{{||{|{{z{zy{z{{{|{{{{zz{z{{yz{{{z{{{|{zzzzy{z{z{z{z{{{z{zyz{z{{{{{z{{{z{zzz{z{|zz{z{z{zz{{yzz{{{{{z{{z{zz{{zz{z{{{|z|z{zyzz{z{{|{{z|{{zzyyzyzzz{{{{{{zzz{zzzzz{{{{{{{zzzzzzzzy{{{z{{{{z{zzzzzz{z{{{{|{z{yzzzz{{{{{{{{{zz{|{zz{{{zz{{}{{z|{{{{{{{{{{{{zz{zzzzz{{{{|||{{zz{{z{{|{{{||{{|{{{{{zz{{|{{{{{{{z{{{{z|{|{{{{{{{z{{{{z{{{|||||{{z{{|}{}|{{|||}{{|{{{z|{||}z{|||z{z{|{z|||||}}||{{{{||{{|{||||||{{{{{z|{{||{|||||{|zz{{{||||||||{{{{|{|{|{||}{|||{{{|{{{~{||||{{|{{{{|z{{{{||{{|{z{{{{{}|{||z|{{{{z{z{{||{|{|{{{z{{{{{{z{zz|{{|{z{{zzy{{{|{||{|{{zz{{zzzz{{{{||{{z{z{z{{y|{z|||{{{z{y{z{{{{{{{{|{{zz{{{{||{{|{{{z{{z|z{{z{{{{{{|{{zz{{{z{z{{{{|z{{zyzz{||{{z||zzzz{{zz{{|{z{{{{{z{{y{{{z{{zz|||zzzzzzzzz{{z{{{|z{{z{{{zz|z{z||{{{{z{|{{|{{|{|{|{{{{{z{z{{{{{{||{{{zz{zz|z{||{||{{{|{{|zz|{|||{{{{{zz{{||{{|{||{{{{{{{zz{{{|{{}|zz|{|zzz{{{{{||}||{{z|{||||||||||{{{{{|{{|||{|}||{{{|{zz|{|{|{||{{{{{{z{|}|||||||||{||{||||{||||||{{{{|{z|||{}||{z||{{{{|{}}||||{{{{{|||||||{}}||||||{|{|{{|{||||{{{{|{{||||{}}||{{|||z|{||{{{}{{{|{|{{{|||{|{z{{zyz{{zz{{|z{{||{y{{z{zzz{{{|||{{{{z{zy{{{{{|{|{{{zzzzzz{{||{{{z{{{zzzzy{{{z{|{|zz{{{yzzz{|z|{|z{z{zzzzz{z{{z{{{zzzzzzz{z|{{{{{{{y{z{zzzz{{{{{{{{{z{zzyzzz{z{|{z{z{zz{z{z{{{{zzz{zzzz{zyz{{z{{{{z{zzyzz{z{||{{{{{z{z{|{yz{{{{{{{|{z{{zzzz{{{z{z|{z{{{z{{{||{{{||zz|{{{zz{z{||{{{{z|{{z{{z|{|{|{||{{z{{z{|{|{|{|{{{zz{z{{{{|{{|||{{{{|z{z|{|}{|{|{|{|{{{{{|{||||{|{{{|yz{||{||{|}|z|{{{{{||}||||||z{z|{|{|{|{}||||{{z{|z{{}{|}}}||z{{{{{{|{||{|}}|{{{{{z{{|{}|}|||{{{|{{||{}||{|}||{{{{{{||||{|}}{z{{{{|z|{{|||||{{{{{{z{{|||}{z{zzzyzzzz{{{{{{{{{zzzz{zz{{{{{{{{z{zz{{zz{yzz|{{{{{zzzyzz{z{{{z|{{{zyzz{z{{{z{{{|{zzzz{zzzzzz{|{{{zz{{zyzz{zyzzy|{{y{z|{zz{zzz{{{z{zz{zzyz{{{z{{z{{zzzzyzz{zz{{|{zz{zzzzyz{{{{{{|{zzzzzzyz{{z{{|{|z{yzzzz{{{{|{|{{zzz{{zy|{{|{z|||{zz{{{y{z{{{{{|{{zzz{z{}{|{{||{z{zzz{y{{{{z|z|{{zzzzz{z{{|{|{z{zzz{{z{{{{|{{{{|z{||zzz{{{|z{{||zzz|z{y{{{{{|||}z{|{|{{|||{{{||{{{{{{{zz{|||{||{{|{{|{{{{||||{}{{{{|{{|{||z{{}}||{{{|{{{|}{{||}|{|||z{{{||||{{|{|{{|{{{{{{|||{{||{{|{{z{|{|{{|||{{{y{z{||{z|{{||{{{z{{{{{{{||{|{{|{z{{|{{{|{|{z{z{zzzzzzz{{{|{{|zzzz{zyzz{{{{zz}{{zy{z{{{|{zz|{{{zz{zzz{z{{{{{|{{{{yz{zz{{{{{{{|zzz{{zz{{{{zzz{zzzzyz{y{{{|zz{{{z{{zzz|{z{{{z{{{{zzzzyyz{{z{z{|z{zzzz{yz{{{{{{||{{{{zzyy{{|{||z{z{zzz{{y{z{z{{z{{z{{z{zy|{{{{{z|yz{{{{yz{{{{|{{{z{{{{{{y{|{|{{{{{{{zy{zz||{{{{|z{{{z{{{z|||{{{|||{{z{{z{z|z|{{|{{yz{{{{z{|{{{|}|{{z{zzz|{|{|{|||{{|z|{{z{{{{|{{{z{{{{{|{{|{|z}||{z|{|{z{{{{|{||{}{{{{{{{||}||||||{|z|zz|{||{|{{|{|{{{||||}|}}|{|}{||{{{{|{||{|||z{{{z{||||{{||}|{{{{{{{|{||}|||{||{{{{{{|}{|{{|||{{|z{|z|{{}{||||z|{z{zz{|{{z{{{{zzz{z{z{||{{{{|z{z{zz{z|{{z||{||z{z|zzzz{{{|{z{z{z{z{zz{{||{{|{{z{{zz{z}{{|{{||z{{zz{zz{{{z{{{{{z{z{yzz|{{{{|z|{z{z{zz{{{z{z{{{{{zzzzzzzz{{|{{||{zz{{zz|{|{{{{|zzz{{yyz{{{|{|{|{z{zz{{zz|{z{{{{{{{z{zz{{|z|{||{z{z{{{{{{|{{{{||{{{{|z{{{{{||{{|{z{{zz{{{{{|{||}{z{{{zz|{{{|{|{|{|{{{{{{{|{||||{{{{{zz{{|||{{{|{{{{{{z{{|{|{{||||{{{|{z{z{}{}{||{|}{{{{{||{||}||{||{{{{{{}}}||||}{{{{||{{|}{|||{{|z||}||||||~|}|||{|{|{{||||{|||{{{|{z{{|{|||||||z{{|{{|{||{|}|}}{{||{{{{|{|||{|||{{{{{||}||||~|||}|{{zz|}|||{||z{{{z{{{{|{{{{{{zzzzzzzy{{{{{{{|{zzz{zzz{{{z||||{yyz{zyz{{zz{{{{{yzzzzz{{{|{{z||{{{{z{yz{{{|{{z{zzz{zzzz{|z{z{{{{z{{zzzz{{{{{{zz{{zzz{{z{{{{{{{{yzzz{z{zz{{{{||{yzzzz{zzz{{{|z|{{{{z{z{zz{|{{{{{{{{z{zzzz{{{{|{{{}{z{zyzz{z{{||{|{z{{zzz{{{|{|||{z{{{{zzz{|{{{{|{{zzzzz{{{{z{{{|zz{{zz{y{{{{|{{{{|z|{{zz{{{{{||{{{{{{{{z{{||{{|{{{zz{zy{|{|{{|{{{{zz||{z{|||}|||{z|{{{{z|{{}||||{{{{{{zz{{|||||{}z{{{{||{||{||||{{{{{{|{{|{|||}{|{|{{||{z|}}{|}|}{|{{z{{|||}{|||||{|{{|{{||{|||}||{{|z{{|||{|{{|{{{{{{z{{|||{||{{{|{z{{{{|||{{|{{z{|zz{{}|z||{{{{zz{zzzz{||{z{{|zz{{zzzzz|||{{{|zzz|{z{z{zz{|{{|{z|zz{zy{{|{z|{|zzzzyyzz{{{{|{{z{z{z{{{z{|{{{||z{z{z{{yyzzz{{z|{{zzzz{z{{{{{z|{|z{zzzzzz{zz{{{{{zz{{zzzz{z{z{{{{zzzzzz{zz{{{{|{|{{z{{zzz{zz|z{z{{|{zz{z{z|{{|||{{y{{{{yz{||{{||||{{{|{{z{{|{z||{{{z{{zzz{{{{{{|{z{{z|{|{||||{{|{{{z{{|{z{{{|||{|{{{{{{|z{|{|{{}||z{zyz|{{||{{|{||{{|z|{{{|}|}|||{||{{||z|||||}||{{|||{zz|{}{}|||}z{|{{{||{|{|{{|||||{{|{{||{{{}}{||{{{||{}|}}||{||{|{|{{{{|{}||{|{|{{z{|||{{|||}||z{{|{||||}||||{{|{{z{|{{||{}|}|{{{z{{{||{|||}{{{{z|{{{{{|{|{{|{z{z{z{z{|z{y{z{{{z{{z{z|z{{{|{{z{zz{{{{{z{||{|{|{{{zzyz{{||z{{|z|zzz{zz{{|{{||zzzzzzzz{{|{z|{{{|zzz{zzz|z|{{|z{{zzzzzzz{{{{{z{zzz{zzzzz{{zzz{||{{zzz{z{z{{|{|{|{{{{zz{{z|zz{{{{{{{z{zzzz{{{{{z|{{z{zz|zz|zz{|{|{zz|{zzy{{z{{{{{{z{{|z{{{{{||{{{{z{{z{{z{{z{|{{{{|z{z{{z|{|{{||||{zzz{zz{|||{|}||{{z{zz{{}||{||{{{{{||z{{||z{|||{{{{{{{z||}|||}||{{z{{||||{||}|}{{{|||{{{||{|||||z{|{{{{}{|||||}{{{||{||{{}||||}|{{||||{{|}||{||}{|||z|{||||{|}|{{{|{|||{|||{{||||{{|{{|||||||||||z{{|{||{||}|}|||||{{{{||{||}||{||z{z|{||||{{{{z{y{{zzz{|z|{||{z{zzzzyz|z{{{||||{{z{z{{{{{{|{{||{z{zzz{{{|{{||{z{z{zz{z|{{|{|{{zz{y{{zz{||{z{{{z{zz{z{z{|{{||{{{yzz{zzzz{{z{{z{{|{{z{zzz|{{z{{zzz{{zyy{{{|{|{{{{{{{z{z{{{{|{{|z{{zz{zzz{z{z{{zz{zzy{{{z{{{{{||{{z{z{z{z||{{z{|{|{{z{z{z{{|{{|{{{{{{yz{{{{{z|{||{{{zz{|{{{|{|{{z{z{z{{{zz|{{|{{{|z{z{z{{{|{|{||{{zz{{z{||||z{z|{{z||{zzz|{|{{|z{{||{{z{|{|||{{}}|{||{{{{|||{||~{{{{{{z|{||{|}||}||{{{|||{}||}}}||{{{||{{{}|}||}||||||{{{||}{|||{}||{{{{|}{|||{}}|{{|{{{|{{|{|z}|}|{{|{|{{}{|{|}|||{{{{{{{||||||||{|{|{|{|{|{|{z{zzz|zzy{{{|{|{||{z{z{{zz{|{{{{{{|{{{{z{z{{{|{{|zzyzz{zz{{{{{{{{{{yzzy{{y{z|{{{{|z{zz{zyzz|{{{|}zzz{zz{z{z{{z{{{z{z{z{{zz{z{zz|{|{z{zzzzy{{{z{{|z{zzzz{zz{{{{{{{{zy{{z{z{z{{{{{||{z{{|{{{{{|{{|{{{{zzzzyz{z{{{{{|z{{zz{{{{{{{{{||z{{{{zzz{|{{{{{|{{zzzzz||||{{|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{zzzz{z{{{{{z{{{{zyyzz{{{{z{|||{{{zzz{zz{{z{|{|{zzz{y{z{{{{zz{{z{zzzy{zz{z{{{z{z{{{zzz{z||{{{{z{zz{zz{z{{|{{|z{z||zzzzz|z{zz{|{|z|{zz{z{|zz{{{{{zzzyzzz{{{{{{{|z{zz{zzy{z{zz{|{zzz{{zzzz{{{z{{|zzz{z{zzzz{{{{{{{z{yzyzz{{{{{{|{zzz{{zy{{{{z|{{{{yzzz|{{{{z{{|{|{z{{zz{z{{|z{{|||{|{z{zz{{|{{{{{|{zz{{z{{{{{|z{{{z{{{zz{||zz{|||{{{{{z{{|||}|}{z{{{{{{|{{z||{||}{{{{{{z{{|||{{{{{|{z|{{{|{|{||||{z||{|{z{{{{|}}|{{z{zz||||||{{||}{{{|||{{||{||||{{|{|{|||||{||||{{{|{|{|{{|{{|||z{{z{|{{|{|{||||z{|{z{{z||||{|||{{|{z{{{|z{|||{{{{zz{zzzz{{{{{||{zzzz{{{{{||{{{{{{{z{{zz{{{{|z{{{zzz{yz{zz|{{z{z{{{{zyzz{{|{z{{|yzzzzzyzz{{zz{||{{zzzzyz{{|{z{{z{{{xy{zz{{yz{{{{zzzzzz{zzzz{{{{{{zzzzzy{{{{{{{{{{{{zyyzzz{z{{{{|{yzz{zzyz{z{z{{|zz{zzz|z{{zz{{z{zz{zz{{zz{|{z{|{{zzz{{z{{{|{{{{|{zz{|z{{{||z{{{|z{{z{z{z{{{{{|||z{{{{zzzz||{{|{|{{|z{|zz{{|{|{{{|zz|{{z{|{|{{|{{z{{|{z{{|||||{|{{{{{{{{{{|{|{||||{{{z{zz{{{{{{{|{z{{{{{{{}{{|{|||{{{||{|{||{|||{|{{{{zz{{||}||{||{{{z{z{||{{{}|}{{||||{{z|{{{|}|{{{|{|{{||{||}||{{{|{{{{|{}||||}||{{z{{{{|{{{z|||{{{{{z{|{|{|{{{zz{zzzzzyz|zz{{|zzzz{{z{z{{{{|{|{zzzzz|z||{||{{|{zz{{{zzzz{zz{{|{{{zzzz{{{|{{|{|zz{zz{{z{{{{{{|{{{{z{zzz{z{{z|{{z{{zz{zz{zzz{{{{zzzzzyzzzz{z{{{{{z{{z{zz{zzz{|{zzz{zzzz{z{z{z{{{{{zz{zzz{{{{{{z|{zzz{zzyz{{{{|{{z{zz{zz{z{||{{z{{{{z{{{{{{|{|{||{{{{z{{z{{||{|{{z{|{{{z{{|{z{{|||z{z{{{z{{z{{||{{{{zz{{|||{|||{|z{{{{{{{{{|{{{|||{{{{{{{{{|||}|}|{z{{{{|||{|||||||{{{{{{{}z|}||{|z{{||{{|||{||}{}{}{|{|{||{|||||||{|{{z||}||||}||z{|{{|{||}|}}}||z{{|{{{|{{|{}}}{{{||||{{||{|||||{||{|{{{|||{|}}||{|{{{{}|||{{|{|||z{{{{{{|{{zz{zz{{zzzz{z{z{z||{zyz{z{{{{{|{|{|{zzzzzz{{{|{{|{|z{zzyzz{z|{|{{|{{zzyzz{y{{{{|||zyzz{{|{zzz{zz{{{zzzyz{zzz{|zz{{{{yz{zzzzzz{{z|{{zzyzz{z{z{z{{{{{{zzz{zy{z|{z{z|{zzzzzzzz{{z{z{||z{{{yzzyz{{z{z{|zz{{zy{zz{z{zz{|zz{z{zz{{|{z{z{{{zzz|z{zz{{|{z{|{{{{zz{{z{||{|{|{{zyzzzy|{{z||{|{{{z{z{zz|{{{|{{z{{{{{z{{{|{{z{{|{z{{z{{{||{|{{|{zzz{{z|{{{|{|||{{{{{{{{|||{|}{||z|{{{{{{||z{{|{}{{{{{z{|{{{|||{|{z{|{{||}|||||}|{{{||{{{}|{|{}||{{|{|{{|{}|}||}{{z||{z{z}{{|||}||{{{|||||{{||}|{|{{{{z{||}|{||||{{{{{zz|||{{||{{{{z{{{{{{{{{{{z|z{zz{|z{{{{{z{z{z{zzzz{{{{{{{{|{{zy{{{z{{zz|{{{{zyz{zzzz{{{z{z{{{zzzz{yzz{z{{|z{zzz{zzzzzzzz{|{{yzzzzz{{|{{z{{{{y{{{{z{{{{{z|{|zyzyzy{zzz|z{{{|zyzzyzzz{z{z{z{{z{{zzzzz{{{{{{|{{|zz{zzyyzy|{z{{{{z{{{zzz{z{{{|{zz{zzzz{{{z{{{{{{{z{zz{{{z{{{z{{{{{zzzzz{{|{{|{|{z{zzzzz{|{{{{|{|z{zz{{{z{{||{|{{{z{{{y{{{{{|{{|{{z{{z{{{|{{{{{|zz{{|{z{||}||}|}z{z{{{|{{|z||{{~{|{{{|z{{|}}||}|{{{z{z|{||{|{|}}{{}{z||{{|{|{|}|{{||{{|z{{||}}}||{{{{{|{{||{{||{{{{{{{z{|{{||||}|z{||{{|{{{|||{|||{{{{zz{|||||||||{{{||{{|{|{{{{{{{|{z{{||{z{|{{zzzzzy{zz{||{z{{{zzzzz{z{{{{{{{{{{zyz{zz{{zz{{{|z{z{{zyz{{z{|{z{{zzzz{{z{{{{z|{{zzzzz{yzz{{{z|{{{zzz{zzzz{{{z{{{{z{zzzzz{zz|{{z{{zzzzzyz{z{{{|{zz{zzy{zzz{z{{{z{zzzz{zz{z{{{{{||zzzzzzyyz{z{{{{{{z{y{z{zz{z{{|||yz{{{{{z{|{{z{|{{zzzz{{z{|{{z{{{{zz{yzz{zzzz{{{|{zzzz{{z{{{|||{{z{{z{z{{z{{}||z{|{{z{{{y{|||{|{|{{z|{{z{||{{{|{{{z{{|{{{|{||||||{{{z{{{z|{||{||||{z|{|{{|{{|{|{|}|z|{{{||}|{|}||{zzzz{{}{|{||{|||{zz{{{{|{|}}|{|{{{{{zz|||}{{|{|{{|{|{{|||{|}|||||{{||{|{||||||}|{{{|{zz{|{|{|||{{{|{{{z{}{{z|||{{|{z{{z||||{{{{z{{{z{{zz{{{{{z{zzzz{{yzzz{|{{{|{{{yzyyzz{zz{|{{{zz{yyzy{{{z{{{{{{zzzzzz{{|{{{{{zzzz{|zzz{{z{|{{zz{{z{x{z{{zy{zz{zzzyyyy{z{{{{|{{zzzzzzzzzzz{|{{zy|yz{zz{{|{z|{z{z{zzzzzz{z|z{{{zzzzzzzz{zzzzz{{{zzzyz{zz|{{{|{|zz{z{{zz{{{{{|{{zzzzzzzzz{{{{{|{zz{yz{zz{{{{{{z{{{{{{{z{{{{||{||{{{zzz{z{|||||{{|z{{{zzzz{|z{{{||z{{z{{{{{{{||||{{{{{z{{{|||{|}{{{{{{||{}|{||||||{{{zzz{{}|||{}||{||{{z{|}||||||{{|{{|{|{|||{||||{|{{||{z}||{|||||||{{{}||{{{|||{z{z{|{{|{{|||||||||{{{|{|||{|{}|{|{{|{{||{||||~|{{{{{{{{||{{{|||{{z{z{z||{||{{{zzzz{z{z{{|zz{z{{z{{zyyzz{{{{{{|{{{{z{zz{{z{{{}{{z{{zzy{{z{zz|{{{{{{zz{z{{|{{{||{{{yzyzy{{{{{{{z{zz{{y{z|z|{zz|zzzy{{zzz{zz|zz{zzzyzzzyzz{|{{{|zzz{zzzzz||{zzz{|zz||zzz{{{{{{{{{zzzzzz{yz{{y{|y|{{z{zzzyz{{{{|{|y{{z{zz{{{{{{{|{{{{{{{{z{|{z{{{{|{{{zzzz{{{{{|||{z{zzz{{z{{|{||{{z{{|z{{{{{{||{{z||{zzzz|{|{||{{|z{{zz{z||{{{|||{{{{|zz{{||||}|||{{{|||{||{||{|}{{z|z{z{||||{{{||{{z{{{{||||||||{{|{{|{||{|{|{|||{z|z{|{{}|}{|}|{{|{{{{{}|z|||}||{{zz{z{|{{||{||||{{{{{{||{|{{}}|{|z{{|{|{||}||}|{{{zz{{|}{{{|}||{|{{{zz||||{{{{zzyzzzzzzz{{{z||z{zzzzzzz{{{z{{|zzzyzzz{z{{z{z{|{z{zzz{z{{{|z{{|zz{zz{{y{z{|{z{{z{{zy{zz{{{{{{{{{zzzz{zzz{{zz{zz{zzzz{zzz{zz{|z{{zzzzzzz{{{{{{zzzzz{zzzy{{{{z|{{{z{zyzzz{zz{{|{|{zz{zyzzzz{{{z{{zzz{zyzz{{zzz|{|z{{{zyzy{{{{{||{{{zzz{{{z{{z{{{||z{{zz{z{||{{|{{z{z{zz{z|||{|{{{{z{zzz{{{{z{{||{{{|zzzz{{{|{{||{{zz{{z{{||{{{||{|{z|{{{{|{||}||{z|{{{z|{||{|{|{|{{{|{{|z{{{{|{|{|zz{|{{{|||{|}}|{{|{{||{{|||||{|||{z{{{{{}|}{}|||z||{{|{{|{||||{|{|{{{{{|{|||||}{|{{{{||||{|{||||z{z{{|{|{{|||||{{{z{zz{||{|{|{|{{||{{{z|{|{|{{{zzzz{zz{{{{{{{{|{{zz{{zz|{{{{{{|{{{{zzzz{{{{{{|{zzzyzz{z{{z{z{{|{zzzzzz{z{{{z{{zzzzzzzz{z{{zz|z{{yzzzzzz{{{|{z{{{zzzz{zzzz{{{|{zzzzzzyzz{{|{{{{z{zzyy{zz{{{{{{{|z{{zzyzyz{{{zz{{{{zzzzyyy{z{{{zzzz{y{zzyz{z|zzz{zy{zzzzzz{{|z||{|{y{zzzz{{{z{{{{{y{zyz|{{{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{{zz|z|{||{|{z|{{{zz{{|{|{{{z{{zz{{yz{{{z{z{{{z{{{zz{{{zz{|{z{{z{{{z{z{{{z{{zzzz{yz{{z{{z{{|{{zzzzzy{{{{{z|{{{{zz{{z{{|{z{z{zyzzy{z{{z{{{{{{zyz{yzzz{zz{zz{|zzz{yzzzz|{{{{{{{{{zzzz{z{{{{{{{zyz{y{{z{{zz{{{||yzy{x{y{{{z{{{z{{zzzzzz{z{{{{{{{z{z{zzz{{{{z|{{z{zz{zzzz{{z{{{{{{{z{zzzz{{{{{|{z{{zzzzz{{{|{{{{{{{{{zz{{|||z|||zz|{{z{{{z{|z{|{{{z{{{{{{{{||{{{{{{{{|{{{||{|}||{z|{{|{{||{{|{||{{{{z{z{||||||||{{{{zz{{|}|{{{}}|{{{{|{|{{||{|{}|{{{z{{{{{}||}||{{|{{z|{{||||{|||{{{{{|}{{||}{||{|{|{{{{}|{|}|}|{{{{{{{z|{{{|||||||{{{{{{{{|{|||{{|y|{{{|||||{z{{zzzzzzyz{{zz{{|zzzzzzzz{{{z{{{}{zyzzzyzz{{{{|{{{{{{yz{zy{{{{|z{yzzzzzzz|z{z{zz|{y{{yzzzzz{{{{{{zz{zzzzzz{{z{|{|zzyzzzzz{zzz{{{{{yzzzz{{{{z{{{{zz{zzzzy{zz{||{{z{z{zzyz{yz{y{z{{z{zzzzzzz{zzz{{z{zzzzzzzzz{{z|{{zzyzzzzzz{|{{{|{zzzzzyzz{{{{z|||zzzzzz{z{{{{{z{|zz{{{{{z{{{z{{|{|z{|{zzz{|{{{|{{{{z{zzzz{|{|{||{{zz{zzz{{||{{|{{{{{{z{{z|z||}}{||{{|z{{|||{|{|||{zz|{{{{|{||||{{{{{{|{|{{|{||{|||z|{{{{{{|{{{|}||{{|{|{|z|||{}|{{|{z{|{|{|{|||||}{{{|{{{{{|||{|}|{{{z{{z||||{||}}|{z{z{{{||||||}|{{{{{{z||{{||}{{{{{{z{{{{||{|z{zzzzzyzzzzz{z{z{z{{z{zxz||{|{{{{{{zz{{zyyz{{{|{zzzzz{y{{z{{{z{{}{{z{zzzy{z{{z|{{zz{z{zzzz|zz{{|{{yzzz{zzzz{zz{{{{{zyz{yzzz{|{{{zzzyzzz{z{{{{|{{{{z{{y{zz{{z{z{{z{z{zzzzz{z|{z{{{{zz{{zzzzz{{z{|z{zyzzz{zzzz{z{{{{{zyzz{{{{{||{{{z{zzzzz|{{|{{{{|{zz{zz{z{{||{|{{zzz{{z{z{|{z{|{}z{{{zz{zz{{{{{{{{{zzzz{{|{|{{{|{{{z{{{|{|{|zzz{{{{{{|{z{{|{}|z{{{{{{z{{z{|{|{|{||z{{{{z{{|||{{|||{|{{{{{|{||{|||{|{|{{}{z|{||}||||{|{|{{{}|}|}}||{{{{{{{|{|{|||{|{{{{{z{{{||}}|||{|||{|z{||||||||{{{z|{{{{||||||{{{{zz|{{{{{}||z{{{{{z{{|{{|{{{{zzz{zyzzz|{zz{{{{zzzzyzzz{{{{{|{{{zy{yzz{zzz{z{{{zz|{zyz{z{{{{{{zzzyzzzy{{z{z{{|zzz{xzzyy{zz{{{z{zzz{yyz{z{zz{z{zzzyzzzy{zy{z{z{zzyyzyyz{|{z{|{{{zyzyzyzz|{{z{{{zz|zzz{{{{{zz{{{zz{zzzzzzzzyzz{{zzzyzzzyzz{{|{{{zzzy{{zz{{{z{{{{{zzzzzzz{{{{zz{{zyzz{zz{z{z{|z{|zz{zzz{{{{{{zz{z{{{zzzzzz{{{{{{{zzz{{{{z{{{{{{||{{z{{{zz{{{z{|{z{{{{{{{z|{|{|{{|{{{z{{{|{|{}{||{|{z|{{{{{||||{|{{{{{{{|{|||z|||{{{{{{{{}z|{{||{|{{{{{|z{{|{|||||}{|{{{|z||{|{|||{zz{||{{|{{}{{||{{{{{|{{{|||{|{|{{{{{{zz{z{|{}|||{{{{{{|z|||{{|{zz{z{{{z{{{{{{{{z{zyz{zzz{{{{{{{{zzzzyz{z{{{{{{|{{z{z|{y|{z{|{{{{z{{zzzzzz{{{{{zzzzzzzzyz{{{z{z|zy{y{zzz{{{zzz{{z{zz{y{{{{{zz{{z{{{zz{z{{zz{z{}{zz{zzz{{{{|{|{{zzyz{zzzzz|{zzz{{{zzz{yzzzz{{{{|{zzzz|z{zz{z{z{{{{z{{z{z{zz{{{{{{{||zz|zzzz{{{{{{zz{{zzzz{|{z{{}|{z|zzzzzz{{{{|||z{{z{{{{{{{z{{{||z{z{zzz{{z|{{{|{z{{zz{{|{|{{{{||{{{zzzz|||||||{{{z{{{{{{|{}{|||z{zz{{{|||{|{||}|{{{{|zz|||{{{|{|{z{{{{{||{|||}|{z|{{{{{{{{||||||{{|z{|{{}||}{}|||||{{{{|z{||||||z{{{{z{|{}|||||{{{||{||{|||||||||{{|{{{||{{{|||||{{{{{z||{|{||{{{{{z{|z|||||{{{{zzzzzzz{{|{{{|{{{{z{{z{{{{{z|{{z{zz{zzzz{z{{|{{zzzzz{z{{{{|z|{||{z{zzzzz{{zz{{{zzzzz{zz{{{{z{{{{z{{zzz{|{{{{||zzzzyzzz{{{z{z{{|{zz{{zzz{z{{{|{{zzzz{zz|{z{zzz|{{{z{zyzz{{||z{|{zzz|zz{yy{z|{{{|z{yz{zzz{{z|z|{{z{{y{zzzz{{{z|{{|zzzzz{{{{|{{z{{{z{{zzz{{{{|{|{{zz{zzzz{{{{|{{{|{zz{z{{{{{{|{||{{{z{zz{{{{|{|{}{{{|{zz{|z|z{z|{|{{{{|{{{|{||{}|{{{z{|{{{}{|||}||{{||{{{{{||{{||||{{{{{z||}||}|}}|||{|{{|||{{|}|{|{{{z{{{{{|||{|{{||{{{z|~|{|{}|||{{|{{{{|||{}|||{{{||{{{|{|}}~|{{|{{||{{||||{||||{z{z{|{|{||{}|{{{{{{{{{{}|{|{{{{z{{{zz{z|{{z{{{{zzz{zzz{{|{{|{{zzzz{{{z{z{{|{z{zzz{{zzz{{{{{{||{{zz{{zz{{{y{{z{zzzz{zzyz{|{z{{zzzz{zzzz{{{z{{{|zzzzzyz{zz{{{{{{z{zzzy{z{z{{|{{z{{z{zzz{{{{{{{{{zzzzzzzz{{{{{z|{|z{z{z{zz{z{|{z{|zzz{yz{z{zz{{{|z{{{zz{{{zz|z{{{{{zz{zz{{|{{zz|{zzzzzy{z{z|{{|{{z{zzz{{|||{{|{|{|{|z{z{{z{{{{{{|||{zzz{{{{|{|{}{{{z{{{{z{|{{{{||{{|{|{{{{||||||}{||{{{{|{|{~|{}|}{{{{{z{{||{|{{||{{|{|{{{|{{|||}{{|{{{{{||{{|}|||{{{{{z||||||||||{||{|{|{||{||{||{{{{||z{{{|||{||{{{{{{|{|{}}||}||{{{|z{{||{||{|{{{{z|{z|}|||{}||{{z{{{{{{|{{|z{|{zy{zzz{|{{{{{|z{zzzzyz{z{z{{{{z{{yzzz{{{{z{|{{|zz{zzyz{{{{{{z{zzzzy{{z{{{{z{z{{zzzzyyz{zz{z{z{{zz{z{zzzz{zzzz{{zzzz{zzzz{{{{{|zzzzzyyy{z{zzz{zzzyzzzzz{{{z{{|z{{{xzzzzz{|{{{{{zzzzzzy{z{zz{{{{z{{yz{{z{{z{{z{z{zzz{{zz{{{z{{|{zzzz{{zy{{{{z{|{{z{{{zz{|{|z{zz|zzzzzz{zz||{y{||{{{zzz{y{{{{||{{{zz||{|z|{||{z{{{z{{zz{{{{|zz|{{|{zz{{zz|{|||}||z{{{{|{{{{|||{|||z{{z{{z}{||{|{||z{{|{|z{}{|{|}|{z||{|||z||{{|||{{{{z{{{z}{{||}}{{{||z{{||{{|||{}{{{|{|{|{||||||||{{{{{{{|||{||}|{z{{{|{||z|}||}z{{z|{{{{{||{|{||{{{{z{{|{{{|z|{z{zz{zzyzz||{|{{zzyyzzz{z{{z{{{{{zz{{{yz{zz{{z|{zzz{zzzz{{{{{z{{yz{zzyzyz{{|{{{z{z{zz{yz{{z{z{{{z{zzzzyzzz{z{{{{{zzzz{yzz{z{z{{{zzz{zzzzzz{|z{{{zy{{z{zzzy{{{{{{{z{zz{{{z{{{z{{{{zz{{yzzz{{zzz|zz{zzzzz{z{{{z{{zz{zz{zzz{|z{{{{{{zz{{z{z{z{{{{{{{{{{zzzz{{{z|{{|{z{zzz{z{{{{|{{|z{{{{yzz{{|{{|{{{{z{{{{z||||{{|{zyzzzz{{{|{{|}|{||{{{{|z{z{{{{||{{z{z{z{{|{||{}{|{{{{{{{|{}||{|{|{|{|z|{{|{{|{||||z|{{|{{{||{||||{z|{{z{{||{{|||{|||{{|||||||{|{{{{{{zzz{{|||}|}{{{{{|z{||{|||||{|{{|{{|{||||||||{z{{{{{|||||{}|{||z{{z{{|||{|{|{zzz{{{{|{|{{{{{zz{{zyzzz{|{{{{{{{z{zzzz{z{{|z|z{z{z{{zzz{{|{{|{{{{zzyzzzz{{{{{{{{zz{{{{{{{z{{|z{z{{{zzz{{{z{{{zzz{z{{y{z{{{{|z{zyzyzz{{{{{{z{{{{{{zz{zzzz|{{{{zz{z{z{{{{{|z{{{{{zzz{zzzz{{{{|||{{{zzzzzz{{{{{{|zzzzz{zz{zz{{{{|{{{zz{z{{{|z{|{{{{z{{yz{|{|{{|}{{z{zz{{{{{}|{|||{z{z{y{z{{{{{|{{{{{|{{z{z|z{{||{{|z{z{{{|{||{{{|{{{{z|{{|||}|}|{{}{{|z{{|{{}{|}|{{{{|{{{{}|||{|||{{z{{{{{}||{}}|{z|{{|||{{||}{{|{{z{{{|{|||||||{{{{{{{{{}||}||{|{|{{{}{|{||||}|}|{|||{z{{|||||{}{|{zz||||{||{|}|{{|{{{{{{}||{||{|{{{zz{{||}{{|{zzzzzzz{zz{{z{{|zzzyzzzzyz{zz{{|{{zzzzzzz{{{{|z{{z{z{zzyzz{||{z{|{y{zzy{y{z{{y{{{zzz{zyzzzz{{z{{{zzzzzzz{z{{{z{{{{yzzzyzz|z{{{z{zz{{{zzzzz{{zzzzzzzxyzzzz{z{z{{{{zz{yyy{z{{|{z{{|z{zz{yzzzzzz{|z|{{zzzzzz{{z{z{{z{zz{{zyz{{z{{{{{z{zzzy{zz{|{z{{{z{zzz{z{z{z|{{{{zzzy{zz{z{{|{z{z{z{z{zzz{{{{{{{z{z{z{zzz{{}{|{|{{{zzz{zz{{{{z{{|{{{z{{z{|{|{|||{z{{{{z{z{{{|{{||{{z|{zzz|{{{||{{{{{{{{{||}{|||||{{|{{{}{|{{{||{}{{{|{{z|{||}|}}}{{{z{{{|||}||}}|{z{{z{{{{{{|{||||{||{{{{{||{||}|{{|{{y{{{|{|{|}}||{{{z{{{{{}{|{{|{{{{yz{{{{|{z{z{{z{yyzy{{z{zz{|{y{{zzzyzz{z{{{{{zyzzyzz{zz{z{|{{zyzyzzyz{|{zz|zz{y{yz|zz{|{z|{{zz{zzzz{z{|z{z{{zz{zxz{zzz{zz{z{zz{zyzzy{yz{z{{{zzzz{zzy{z{z{{z{z{{zyzyzz{zzz{zzzzzzzzzyz{{|{{{yzz{z{zzz|{{zz{{zzz{zzz{zz{z{{{z|zzzz{{zy{z{{{zz{zzzyzz|y{z{z{z{{{zzzz{{{{{||{{{{{{zzzzzzz{|z{{{|{{zzzy{z{|{{{{|{z{|z{z{zz{|||{{{{z{{{zz|{|{{z{|{{{z{{{{{{|{{{|{{{{{z{{zz|{{|{|||{{zz{{{{{||{|{{{|{z{z|{z{||{{||{{|{{{|||{{|{||{{|{{|{||{||{|{|{||{||{{z||{||{|{||{{{|{{{{|||{||||{z{|{{z|{||{|||{{zz{{{|{{|{|{{|{|{{z{{z|||||{|{z{z{{zzz{|{{|{{z{zzzzzzy{{{|zz{|z{zz{{y{{{z|{{{{z{zyzz{y{{{{|{{{{yzzz{z{{{|z{{{{zzzzz{z{z{{{{{{|zz{zzzzzz{z{||{z{zz{z{yzy{|{zyzz{zzzz{zzz{{{z{z{zzzyzzzzz{{{zz{{{zzzyyzz{{|z{z{{{zzzzzzyz{{{{{{{z{{y|zzzzz{z{{{{zz{zzzz{{zzzz{{{zzzzzzz{{{{zz||{zz{zzzz{z{{{{{{{{{{z{zz{{{{|{|{}zzzzzz{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{{{{{{{{{{|||zz{z{{{{{||{||{{{{{{{{{{{||{{{zz{zz{zyyyz{{{{{|zz{zz{zz{z|{{{}|{zz{zzzyzz{z{{{}{zzz{{zz{{{{z||{{z{yzz{zzz{|{{{|{yzyzzz{{|{{z{|{zzzzyzy{{{{{z{{{zzzzzzzz{z{{{|{zzyzyyzzzz|{z{{z{zzzzzyzz{{{{|zzz{{z{{yzz{|{{{{{{zzzzzy{zzzzz{{{{z{zzzz{zz{y{z{{|zz|z{{zz{{{{{{{|zzzz{zz{{{|z{{||z{{z{{zz{|{{{{{{{{yzz{{{{{{{|||{{zz|zzz{z|{{||{|{{{{{zzz|{|||{{{{zzz{{zz{{{{{|{|{{{{{{|{||{|{|{{{{{{{{{||{|{{||}{{{|z{|{|{{|{{{||{{z|{{{|||z||}}{{|{|||{||{{{|{{}{{{{|{{{|{|}{}|{{{|{{{{||}||||{}{{{{{z|{|{{{{{}{{||{{{z|||{|||||{|z{|{{{{{{|{}}{{{{z{{z{}}{{||{|{|{{z{zz{||{{|zzzzzz{zzz{{{{{{{z{yzz{z{z{{z{|{|{{y{{zzz{{{|{{z|{yzz{zz{{z{{zzz{zz{zzz{z{{z{{|{{yzzzzz{z{{{z{z{{{zyzzzzz{zz|{{zz{{{zzzz{zz{{z{{{z{z{zyz{z{{|{z|{{z{zzzyz{z{{{z{z{z{yy{zz{{z{z{{|{{zzzzzzzz{|zz{z{yzyzzzz{{{{{{{{zzzz{{zz|z{{{{|{{z{zzz{z{z{{{{{{z{{zzzz{{{|{{{||{z{zy{zz||{{|{{{{z{{zz{{z{{}{{{{{{{z{{zzz|{|{}||zz{{z{{{|{{{|||{|{{z{{{z|{{|}}{|{{|{{z||||z||{|||{|{{{{z{|{{|{{{|{{{{{{{||||||{}{{|{{{{{||||||}||{{|{{{{{}{|||||}{{|{{{|||||||{||{|{{{{|||{||{|||{z{{{{{{{||{}||{{z{{{{|||||||}||{{{{z{{{|||{|||{{{{|{|{{||z{|{{zzyzzy{yzzz{z{z{zzyzzzxzzz{{{z|zz{z{zz{z{zzz{z|{{z{yzzzzzzz{zz{{{zzzzyzyzzzzz{z{{z{zzz{zzz{{{||z|z{zzyzzz{{z{{{{zzzzzyyz{{{{z{{zzzzzzzzzz{{{z{{z{zzzyzyzzz{{|y{{yyz{yzzz{zz{{{||{y{zzzzyz{{zz{{{{{{{zzy{z{zyz{z{zyzzz{{zz{zz{{{{{zzzz{yz{{{zz|{{zzz{zz{{{|z{|{|{{z{zzzzy{{|{z|{{z{z{zzzzz{{{{|{{|{{yz{z{{{{{{{|{{{z{{{{z{{z{{|{{z|zz{z{{||{{||}{{{z{|z{z{|{|{||||z{z{{{{{{|{z{|{|{{z|zzz{{|||||{|{zzz{{{{{{|{||{|{{{{{{{{{{|||}|{{{{z{{{{|||{}|}|{z{{{{{{{{{|{|{|{{{|{{{{}||{|||{{|{z{{{{{|{{}||{{{{zz{z{z||{|{{{{{{{{{z{{{{{|y{zy{zzyzzz{{z{|{{{{z{{y{zz|{{{{z{{y{zz{zz{z{{{z|{zz{{yz{zz{|{{z{{{{{{z{yy{z{{z{{{y{zzzzz{z{{{z{{z{zzz{{z{zz|{z{{{y{zyzzzyzzzz{{zzyzz{zzzzzyz{{{{zzzz{y{{z{z{zz{{{{yy{yzzzzz{z{{||zzzz{zzy{{z{{z{z|zzzzyz{zzz{zz{z{zz{{zzzz{{z{|{{{z{{{zz{z|{zz|z{{zzzzzzz{{{{|{|{{{z{{{zz{|{{{{||{{{{{zz{z|{|{}{{{{{z{zzz{|||z{{{{{zz{zz{{{{z{|{{|{{{{z{{z{|{{z|{{{{{{z{{||{||||}{z{|{{{y{|||}{|{|z{{|{z{{||||{||{{|{{{|{{||{{||||{z|z|{z{}{|{||}{{{|{{{{z{|||||||{{{{{{||{|{{|{|||z{{{z||||||||}{{z{{{{y|z|{||||{z{{y{{z{|{|{{}|{{|z{z{z{{|{{z{{{z{{zzzy{{{{{{{z{{zzzy{z{{{{{{{{z{|zz{{z{{z{|{{z|yzz{zy{z{{{{{{{{{{yzz{zzz{z{{{{{z{zzy{zz{|{{z{z{z{zyz{z{{|z{|z{zzzzy{yyzzz{y{|{{zzzzz{zzzz|{z{{{zz{yzz{zzzz{z|{z{{{zy{zz{{{zz{|z{z{zzzz{{{{{z{{{zzzzzz{z{z{zz{|z{zy{z{z{{{z{|{|{z{yzzzz{{|z{{{{z{{zzz{{{{{z{{|{z{zzyz{y{{{||{{{{zz{{zz{z{{{{{{z{z{z|{z{{{|{{{|||{{{{{z{{{{{{|{{{{{z|z{zz||||{||z{{{{{z{{|{|{}{|{{z{|{z{||||||{{|{{|{|{{|{||}|||||{{{{|{|{}{}|{||{{{{{|{|}|||||||{|{{{{{|{|}||{{||{{|{{{{{||||||}|z|{{{{||{}||{|{{{{z{{{{{z|||}|{|{{|{|{{||{|{{{{z{z{z{{{{|||{{zzy{zyyzzzz{{y{z|yzzzzyzy{zz{z{|{yzyzzzzzz{{zz{{{{zz{yyzzz{zzz{{{{y{yzzyz{{{{{z{{zzyzzyzyzzz{{{{zzyzyyzzzzz{zzzz{zzzyzzyzzzz{yzz{zzyzzyyyz{{{zzzyzyzzyzyzzzzz{zz{{z{zyzzzz{zzz{{{{yyzzzzyz{zzz{yzzzzyzzz{y{zzz{|{zzzzzzzy{yzz{z|{{{zyzzz{{zzz{|{{{zz{zzzy{zz{{{{|zzzzzzyzz{{{{zz|z{z{zzzz{{z{{z{z{zzz{{{zz{{z{||zzzyzzyzz{{{z{{|{zzz{z{zy{||z{|{{{{{{{{{z{|{|{z{zz|{z{{{{{z{|z|{|{{z{{{z{{{{z{{|{|{yzzz{{z|{{{|{{{{z{{{z{z}{{{||{{{{{zz{{{z{{{|{||z{z{{zz||z{|z{|z{zzzz{{||{{{{{}z{{{|{{{||{|{||{{{{z{{{{{{{|{{|{z{z{z{{z{{|||{z{zzzzzzyzyzy{zzzzzzzyzzyy{{zz{{zz{yyy{zzy{zz{{zzzzzzzyyzyzzz{{zz{{z{zyyzyz{{{zz{{zzzyzyzyzz{{z{{zzzzzzzzzzzzzz{y{yzzzzzyyzzzzzz{zzyyzzxzzzzz{z{|z{{zz{yyzzzzz{z{z{zzzz{yyz{{zzz{zzyzzzyyyzyz{{yy|{zzyzzzzz{zzzzz{{zzy{zzzzyzzz{z{{z{zzyzyz{{z{{zzzz{zzzzyzz{zzz{{zz{z{yz{z{zz{{{|zzz{zzzzz|{{{{{{{zzzzzzz{{{{{{|{{z{zz{zzz{{{{{|{zz{{{zzz{z{{|{{{z{zzzz{z{{{{|||{{{{{{z{z{{{|{{|z{zz{{yzz{|{{{z}{{zzz{{{{{|z{|{|{{{z{{z{z{}|{||{{{zz{{{{z||||||{{{zzz|zz{{{{{|}}{{z{{{{{{|{{{{||{z{zyzz{{{|{|{|{{{{||z{zz{{{{{z{|z{zzzz{z{z|{{{zz{zz{yzzzz{z{z{z|{zyzzyzz{z{{z{{{z{yyzzyy{zzz{{{zzzzzzyzz{zz{zz{{zzzzzzzzzz{{zz{{zy{yzyzyyzzz{zz{zzzzzyyzzzzzzz{zzzzzz{yzyzz{z{{z{zzzzyzyz{{zzz{{{yzzyzyzzz{{{z{{{zxzxyzz{{{{z{{{zzzy{zzyzz{z{{zzzzzzzzzyz{{zz{{{yyzy{zzyz{{{|{{{zz{z{yzzz{z{z{{{zzzzyz{z{zz{z{{{z|yzzyzzz{z{{{|{{{{zzzzzz{{{{{z{zz{zzzzzz{{|{|{{z{yzz{z{{{{{z|{|{{z{{{{{{{{|{|{{zz{z{{{{||{{{{||{z{{zzzzz|||{z|{|{{z{{{{|||{{{}||{z{z{{{|{{z{|{{{z{{z{{z{||||{|{}{{{{z{{{|{{|}}{{{z{{{{{||{|||||{zz{z{z{{{{{||||z{{zzz{{{|{{{|||{zz{{zzz{|||{{{|zzzzz{z{{{{{|{zzz{yyzy{zz{zzz{{{zzyyzzzzyyzz{{{zzyyyzzzy{zzzz{{z{yzzzyyzzz{zz{{|zzzyzzzy{z{zzzz{zz{zzzzzzzz{zzz{zzzzzyyyzz{zz{{z{zzzyz{zzzz{z{{zyzyyyzzzyz{{zz{zzzzzyzyzzzzz{zz{zzzzyzy{zz{zyzz{zyyzzzzzzzy{zzzyzzyyzzzyy{{zz{{{zy{{{zzzz{{z{{{z{zz{zyzyz{{{{{{zz{z{{yzyzzz{||{{zzzyzzzz{{{{{{{{|zz{zzzz{|{{{|{{zzzz{{{{{z|{{{{{zzzz{{{zz{{z{|{{z{z{zz{{|z|||{z{z{z{z{{{{||z{{{{zzz{{zzy||||{{{{{|{|zzzz{||{|{{{{z{z{{{{{{|z|{{{||z{{zzz|{z{|||}|z{{{{z{|{{{{||||{{{|{zz{{|{{{||{|z{{z{{{{{|{{}||{|{{{|{{{{||||{z{{{zz{y{|{|{{z{{{{{zyzz{{{|{{{y{yzyzzyyz{{zz{{{yyyyyzzyzzzz{{z{zyyzzyzy{z{z{z{{yyzyyzzzz{zzz{z{z{zzzzzyzzz{zzz{yy{z{yzyyzzzy{z{{z{yyyzz{y{{zzz{zzyzzzzzzy{zz|z{zzyyyzzzzzzzz{zz{yzzyzyy{zyzzzzyzyyzxzxzz{{z{{{{zzyzyzyyy{zzzzzzzyzyzzzzyzz{zzz{zyzyzzzy{{{{{{{zyzzzzz{zz{zzzz{{zz{zyyzzzzz{z|z{zyzyzzz{z{{z{{{{{zzzz{zz{|{z{{zzzzz{zzzz{z{{{{{zzzy{zzz{{|{{{{|{{z{z{{z{|{{{{|{|z{{zzyz{|{z|{|{|{{y{y{zz{z{z{z{{{zz{{{{{{{{{z|{|{z{|z{z{{{{{{|{{|z{zz{{zz{z{z{{|{{{{zz{z{{|{{{||{z{{z{z{{z{{||{{|{{{{zzz||{||}{{zzzyzz{{{|{||{|{{{z|z{{{{|{|{|{{z{{yzyzz{{{{{{{{zzzzzyzz{z{yzz{zyzz{yyzyzzzz{{z{zzyyyzzzzzy|z{zyz{{zzzzzzz{{yz|{{zzyzz{zzz{{z{z{zzzyyyzyzzzzz|{{zzzzzyzyzz{zy{zz{yzyzy{yzzzy{z{{zy{zyzzzyzzzz{{zzyyzzzyzzzzz{z{zzzzzzzyyy{{zzzz{zyzzzyzzzzyzzz{yzzzzzyzyz{z{zz{{zzzxzzy{{{{zzz|zzyz{zyzzzzzzz{z{yzzzzy{y{{{{{z{{{zzzzzz{z{{{zz|{{z{zzy{yzz{zz{{{{zzzzzyz{z{z{{|{zz{y{{zz|{z{z|{zz{zzz{{z{{{zz{||{z{z{z{{{{{||{|{zzzzz{z{{{z{{{{{{zzzzzy{{{{|{{||z{{zz{{{z{z{{||{{{{|z{{{{|{{{{|{zz|z{{{zz{{{{|{|{{yzz{{|{z{{{|{|{{{z{{|{|{{{{{|{{z{z{z{z{{|{{{{{z|z{z{zzy{z{{{{{z|zz{z{z{{{{{{{zyzyzyz{zzzzz{{z{zzzyzzzzz{{z{z{{yzzy{yyyzyz{z{|{zyzyyzz{z{zz{z{{zzyzyzzy{zzzz{{{zzzyzy{yy{zzzz{zyz{zz{zzzz{zy{{zzzzyzzz{zzz{{y{zyzzzzzyz{zzzzz{{zyzzyzy{z{z{z{{zy{zzyzzzzzzzz{z{zzz{zzyyzz{z{zz{{zzzzzyy{zzz{{{{yz{zzzzy{|{{yzz{z{zzzz{zz|{{{z{{{yzyz{z{|z{z{z||zz{{{zzz{zz{{{{{z{zyzz{{z{{{{{z{{{zzz{zzz|{z{{{{{zz{zz{{z{z{{{{|z|{{zz{{{{|||z{{zz{z|z{{{{|{z{{|z{z{{zzz{{{z{|{|{zz{{{z{z|||{z|{|{{{z{{{||{{{||{|z{{{zz{z|||{|||{{{|{zz{}|{|{}{{zz{{{{z{|{|z|{|||{y{{zzz|{|{{||{{{{z{z{{|{|}{||{|{z{{z{{||{{|||{z{{zz{z{zz||{zzzzyzzzy{yyz{{zz{{zyyzzyzzzz{z{{{|{zzy{zzy{zz||z{{zzyyyyyzy{{zz{{{zzzyyzyz{zzzz{z{zy{zyzzyzz{z{{z{zzzzzyyz{z|zzz{{yzyzyzy{zzzzy{z{yzzyyyyyyz{zz{zzzzzyzzyzz{zz{{{{yzzzyyzyzz{zz{{yyzzzzyzzyzzz{{{{{{zyzzyzzzz{zz{zyzzzz{zyz{{{{{{{{zzz{zzzzy{yz{{{zz{zyzzz{{{{z{z{z{zzz{z{zzz{z{{||{{{zyz{y{{|{{z{yzzzzzyzzz||{z{|{zzzzz{zz{z{{{z{z{yzzz{zz{|{||{{z{z{zz{z{|{{{|{{{{z{{z{z{{{{{{{{{zyzzz{z|{{z|{|{{z{yz{{{{||{{||{{zz{z{y{{{{{|{||{{{|z{{{|{{{|{{{|z{z{{{{|{{{||}|{|z{zzz{|{{||{{{z{{zz{{zzz||{{|||z{{zzzzzz{{{z||z{zz{y{z{|{{{zz{zzyyzyyzzz{zz{{{yzyyzyzzzy{{zz{{z{yzxzzy|zzzzz{{yz{zyzzyz{{z{y{{zzzyyzzyzzzz{{z{{yzzyy{zz{zy{zzzzyyzzyzyzzzzz{z{yzzzyyyzzzzzzz{zz{yyyyyzzzzzyzzzzzz{yzyzz{{{{z{zzzzyyyzyzzz{{{z{zzzyzzyzyz{yz{z{zzzyzyzzz{z{z{{zyzzyzyyyz{zy{{z|zzzy{zy{yy{{{{{{zyzyzzz{{{z{{{{zzzzzyzyyzzz{z{{{{zzzzz{zz{{{zz{{{{z{{yzz{{{{{{|z|yzz{zz{{{z{z{{|{{zz{zzz{{{{{|{{z{yzz{{z{{{|{{|{{{{zzzzy{{z{{{z{|z{{{z{z{|z{{|{z{z{{{{|{z{{|{||{|zz{z{zz||{|{|||z{z{{zzz{{{{{{|{|zz{{zz{{{{{{{z||{{{{{{z|{z{{|{|{zz{z{z{{|{z{{{{{{z{z{zzz{{{{z|{zzzyz{{zz||{z{zzzzzzzyyzzzzzzz{|zzyzyzyy{{{zzzzzzzzzzzyyzzzyz{{zzyzyzzzyzzz{z{{z{zzzyy{x{yzz{z{{yy{zyzzzz{{zz{yzzzzyxyxzyz{zzz{{zzzyzzzyzzz|zzz{zyzy{zzzzzz{zzzzzyzzyyzzzz{yz{zyyzyzyz{yyzz{{zz{yzyzyyyyy{yyzyz{zyzzzyzyzzzzy{zzzz{zzzzz{z{{z{zzz{zzzzzzzyzz{{{yyzyzzyyy{z{{z{{{yzzzz{zz{{{{z{z{{z{{zy{zzzz{{|{{zzzzz{zy{{{z{{|{{zyzz{{{{{{z{z{z{zz{{z{z{{{||{||{{zy{zzz|{||{{|{{zzzzzzy{|{{||{{{zzz{{zz{{{|||||{zzz{{{{|{{z||{{{zzzz|{{z{{{|{{{zz{z|{|{{{|z{{z{zz{z{z{z{|{{{{||{zzy}yzz{{{|{{}|z{zzzzz{z{{|{|{{{{zzz{{{{{zz{{|{z|{yzzzz|{{{{|{zzzzz{yyzy{zzzz{z{{zyzyzzz{{{{{{{{yzz{zzy{{zz{{|{yz{z{zyz{{{zzz{{z{yyyyyy{zzzzz{{{yzzzzzy{zyyy{z{z{zyyzyzzz{zz{{zzzzz{{yz{{y{zz{zzzzzzzzyzz{y{{{zzzyzzzyz{y{z{{zz{zzzyzzyz{{{{z{{zzzzyyzzzzzz{z{{zzzy{zzzzz{{zzz{zzzz{{zz{{{z{z{{yzzz{zzz{z{{{{{{{z{zzzzz{{{{z{{{zz{{{{{{z{|{{{{|{z{zzzyzzzz{{{{{{z{zz|yz{{||{{{{{{zz{y{{{zz{{{z{{{{{zzzz|{|||{{{z{z{|zz{|{{{{{{|{{z{{z{z{|{||||z{zz{{{{z{|{{{{||{{{z{{|{{||{{||||{{{{{{{{{{||||{{z{{{{{{{{{{}}{|{z{{{{{{{{{|||||{{zz{zz|{{|{|}z|z{|zzz{{z|{||}|{z|z{z{{||}{|{|||{{{yzz{{{{{||{zz{{zzzz{zy{{{{zz{zzzzyyzz{zyzz|{|zyzzzyzz{{z{|z{{{{{zzzyyz{||{zz|{zyzyzzzzz{z{|{|{zzzzzzz{{z{z{zzzz{zzzzz{{{yy{zzz{{zzzz{{z{zz{z{zzy{yyz{zzzzy{{{zyz{yzyyzz{z{{{{zz{yyzyzz{{|{{z{{{zzzz{yz{z{zz{{zzzzyyzz{zzzz{|{zyzzz{{{z{{{{||{{zzyzzzzz{zzzz|{z{z{zzz{{z{{zz{{zzzzzz{{{{|z{{{{{zz{yzz{{{{{{{{z{z{zzzzzz|{{{{|{{z{{zzz{{z{{z{{|{{zzz{zz||{{{{{{z{zzz{|{{{z{{||{|{{z{zy{{|{|{{|{{{{{z{z{|{|||{||{{{z{{{{{{{|{{||{z{{zz{{{}|{|||{|{|{{{{{{{{|{||{{{zzz{{{{{||{{||{|{{{{{|{z||{|||{z{zz{z{{|{{|{|{{{{{{{zz{{{|{z{|zz{|z{{{{{{{zzzzzyzyzy{yyzz{{zz{yzzzyzy{yzz{z{z{zyzzyzyzzz{{zz{{zy{zzy{zz{z{{z{{zyzz{{zyy{{{{zy{zyzzzzzyyz{zy{{zzzzyyyzz{{{zz{zzyzzzzzyx{zzzxyz{zzyzyyzzz{zzzyz{yyzzyyy{zzzzzy{zzzzyzyzzzzz{zz{{zzzyzzzzzzzyzz{{zzzyyz{zzzzzz{z{xyz{zyyy{zzzzz{z{zzzzyz{y{{{zz{{{zz{zzzz{{z|{{{{yzzyyzzzzz{yz{{{{{zyzzzzz{{{{{{{zzzzzzzy{{|z{{{{{zzz{{z{zz|z{z|{{{zz{zzz{|{{z|{{zz{z{{{z{|{|{{{{zz{zzzz{|{{{|{{}{zz{zzz{|{|{{{{{{zzzz{{yz{{{||{|{zzzz{z|{{{|{}{{{z{zzzz|{|{|{{||{zz{{zz|{{|{{z|z||z{{{{z|{{{{||{||zz{|{{{|z{||||{zz{z{{{z{z|{{|{{z{{{{zz{{{{z{z{yy{yzyzyyzy{zzz{yzyyzyyzyz{y{{{z{zzzzyyy{{{z{{{{{zyzzz{zz{zzzz{{zzyyyzyyzzz{{{z{yx{zzzyzzzzzz{zzzyyyzxyyzzzzy{z{zyyzyyyzyzz{yzzzzyzyzzyyzz{zzzzzzzyzzzyzz{{{zzz{{yzyzyzzy{z{{{{{zzzzzzzyz{yzz{{yzzzzzyyzz{{zz{{|zzzyyyyzzzz{z{zzzzzzzyzz{z{yz|{|xzzzzz{z{zz{z{{|zzyzzy{zzz{z{{zz{y{z{yyzzz{{z{|{{{z{{zzzy{{{zz{yzzyzz{z{{z{{z{{z{{zzzy{z{{{|{{z|{zzzzzz{{|{z{z{{z{zz{z{z{{|{|{{{{zzz{{{y|{{{{{{{{{{z|zz{|z{{|{|{|{{z{{zz{|{{{|{|{z{{{zz{{{{|z|z|{y{z{|yz{{{{{|z|zzzz{z{{{z{{{{{z{zzzz{{{zzz{z{||{{{z{{z{z{z||{{{{z{zzz{z{|{z|zzzyzyyyyyyz{zzzz{{{yzyzyyyy{zy{{z{yzzzyzzzzzz{{z{{{zzz{yyz{z{z{zzz{{zyyyyy{zzzyz{zz{zzzxzyzz{z{zzzzzzz{yyzzzz{zz{{zzzyyyzzyzy{y{zzyyzzyyzzz{{zzz{zyyzzyxxzzy{{{{z{zz{yyyzyx{z{{{{{y{zz{zzzzzzz||zyzzzyzzzzzzyz{{{zzzzyzzz{y{{{{yzzzzyzzy{zzz{{z{{|zz|z{y{{zzz|z{|{zzzzz{z{z|{{{{|{{{zzzzzzz{{{{{{zzz{z{{zyzz{{z{{{{{|yz{zz{{{{z{{{|z{yzz{zzz{z{{{{z{{z{{z{z{z{|{||||y{z{zz{|||zz{|{{{{zzzz{{{{{||{{z{{{z{z|{z{{|||{z{z{{{{{}|{{|||{z{{z{{z||}|{{|{|z{{{{|{z{|{|{||||z{|{{z|{z|{|{{{{z{z{zz{|{|{}||{{zzz{zz{{||{z|{z{{{zz{yy|{|{z{zzzyy{yyzz{{zyz{|zzyyzyzyzyzzzzz{{zyxyyzyy{z{{{{zzzyzyzyzyzzzzyzzzyyzyyzyzzzzzyzzzyyzzzzy{{zyzz{z{yzyzyzyzzzz{z{zzzyyyyzzyzzzzz{zyzyyyyzyz{zzyz{zyyzzyzyz{yzz{y{zzzzzzzy{zzzz{zzzzyyzz{zyyyzzzzz{yzyyyzzzz{zzzzzzyzzzzyyy{zzzzz{z{yzzzz{zz{{{yzzzyzzz{yyzyzzz{{{zzzzyxzy{zzzzz|zzzz{{yzzy{{{{{{zz{zzyzyzz{z{zzz{{{zzzzzzz{{|{{zz{z{zzzzzz{{{{{||{z{z{{z{z{{{{{{{|{zzz{zyy{{||{|{{{{{zz{z{|}zz{|{|{z{zz{{{{{zz{{{{|zzz{z{{{|||{{{|{z{{z{zz{{{|z{|z{z{{{zyz|{{{{{||z{z{z{zz||{{{{||{{yzzzzz{z{{{|{{zzzzzzyz{z{{{{|{z{{z{z{zz{{z|{{yzzyzxzyxy{zzz{{z{zyzzyzzzz{{{{{{{zzyzzzyzzz{{{z{zzzyyzyy|zz{zz{zzyyzyyzz{{{{zzzzyyzxzzyyy{z{z{zz{xzzyzzzy{zyzzyzzzzyzyyyyyy{z{{{zzxyyzyyyzzz{{{{yyyzyzzzyz{{{{|{zz{zzzzyzy{z{z{{zyzzzzzyzyzzz{zzzyzyzyyyzyzzz{{{{zzzyyzz{{z{{{zz{z{zzyzyz{zzz{z{zz{zyyzz{{|{z{{{{yzyzzzzz|{zzz{zz{zzzyzy{{zz{{{{{{zzzzzz|z{z|y|{z{zzzzzz{{z|y|{{{zzz{zzzz{{{|{{{zzzzzzzz{{{{{{{{|yz{z{{z{|{{|{|{{z{{{zz{|{{{{|{|{{{{{{zz{|{{{||{|{zzz{{{z{||{{{{{z{|{{{{{{|{{{||{z{z{z{|{z{z{{{|{{z{{{{{z{{{{|||{{{z{{z{z|{|z{|{{z{zz{z{{{{{z{{|{zz{{zz{{{{{|{zzzzz{yyxz{z|z{zz{zzzyzxzyyzzyzz{{zzzyzyzyzyzz{z{{{zzyzzzzyzzzzzz{z{yyyzyxzzzzzz{{yyzyzzyyyzzzy{{{zzzyzzy{zzz{yzzzzzzyyyyzz{{yyzz{zzyzzzxyzz{zz{{y{yyyyyz{zzz{z{zzyzzzyzyzzz{zyz{{zzzzzyzyzzzzzzzzyzyyzyzzzzzzyzz{yzzzyzzzzz{{{z{{zzy{{yzy{zzz{z{|z{zzzyyz{{zzz{{{{zzy{zzy{z{{zy{{z{zz{yz{z{zzz{zzzzzyyzzz{z{{{||z{zzzzzyz|{{z{{{{z{zzzzzzz||{{{{{z{{z{zz{{{z{{{{|z{{zzzy{{z{{z{{{{zyzzz{z{{{|{|{|zz{zy{{zz{{{z{||{z{{zz{{{{{{||{{{{{zzzy{|{{z{z{{{{{{{{{{zz{z{{|{{{zz{{z{{{z{{{|{{{z{{{zz{{{z||{{{{zzyzzz||{|zz{{z{{zyz{{z{|{{zz{z{yyz|zyz{{zz{{z{zyzzz{yz{{{{z{zzzzyzzyyz{zz{{||zzzyzzyzzz{{y{z|zyzyyyzyyzzzzz{{zyzy{zzyz{z{zz{zzyyzzzy{z{z{z{{zzyzzzzzzyzzzzyzzyzzyyyzyz{|{zz|zzzyyyzy{zzzz{z{{zzzzyzyzzz{{z{{{{zzzyy{yyzzzz{z{zyzzzzzyzzz{zzz{yzzzyzzyz{zz{{zzzy{y{zzyzz{z{{{{{yzzyz{yz{{z{{{{zz{z{zzzzzz|{{|{zz{z{zz{z{{{z|{z{zz{yzzzzzz{z{|{{zy{{zzz{{{{z{{{|z{zz{z{{{z|{|{{zz{zz{{{{{{|z{{|{z{{{zzz{{{|{z{{zzzz{{{{|{{{{||{{y{zz{{{{z{{{{|{||z{z|z{{||||z|||z{z{{{{||||{||{{z{|z{z{{{|{|{|{|{z{|{z{{|{{{{{{zzz{{zyz{{{{|{}{{zz{zzzyz|||{||{zz{z{zz{z{{z{zz{zyzyyzyyzz{{z{z{yzzzyzyyzz{zz{{z{{zz{zyyzzy{z{z{zzzyyyyzzz{zzzz{{yzyyyzzyzz{zz{{zzy{zzzy{z{zz{zzyx{zyzyxzy{zzzzy{yzzxyyyzzzz{zzzzyyzyzzzyyzyyzzzzzzyxzzyzzzz{y{zzzzxyzxx{{{z{{{{zyz{zzzxy{zzz{zz{zzzzyzzyzzyy{{zzzyyzzzy{zz{{zz{{yzyzyyzzz{zz{{{zzyzzzzzzzzz{{{|zz{zzzzyzz{{{{zzy{zz{zzzzzz{{zzzzz{zzzyyzz{z{z{{{zzzzz{z{||z{{{zzzzz{{z{{{|{{{{z{z{zzzz||{zz{|{{zzzzzz{z{{{{{{|{{z|{{zz{{{{z{{{{{z{z{z{{z|z{{||{||z{zz{{{|{||{{|zz|{z{z{{{|{z{|{{z{z{z{{{{|{|{||{{{{{zz{{|{|{|{{z{zzzzzz{{z{|{||z{z{|y{z{{zz{{{z{z{{yyzzz{|{z{{zzzyxzyzzyzzzzyzzzyzzzyyyzzz{{z{zzzzyyz{zzz{yzz{yz{zzzzyy{zz{zzz{zzyyzzyz{z{z{zz{zzzyyyyxzzzz{{{yyyzyyzyyzz{yzzzzyzzyzzzyzyzzzz{zzyzyzyzzzzzzzzzz{yzyxyzzz{zz{{{zzzzzzyyzzzzz{{|zzyzzzzzyz{zzzz|{yz{yyzzzyzzzyz{|zz{yzzyyzzz{{{{{zz{{zzyzz{yz|z{{yzy{zyyz{z{z{|z{yzzzy{zzzz|z{{{|z{{{zzzzz{{{{{|{{zzzzzzz{{{z|z{{zz{{zzzz{|{z{{{{zz{zzz{{{{{{{|{|{zzzz{{z{{z{{|||{zz{zyyz{|{z|{{{zzz{zzz{{|zz{|{|y{zz{z{z{{{||{{}|{{|zzzzz|{{{|z||{z{{yz{{{{{||{{|zzz{{zz{{{{{{|||{z|{{zz}{{{{{{|{{{zzz{zz{{{{{{{{{zyzz{{{{{{||{{z{|zz{zy{{|{z{z{yzyzzyzyzz{z{z{{zzyzyyyz{zzzzz{zzz{zzyzyzzzzzz{{yzzzyyyzzz{yzz{{{{yzzyzyzz{{zzz{zzzyzyyyy{zyz{zzzzyzzzyyyzzzyz{zzzyzyzyzzzzyyzzzzyyzyyyzz{zzzyzzzyyyyyyzy{{yzzzzzzzzzyyyzz{zyyz{zzyzyzzyzzyzzzzzzzyyyzzyy{{{zzz{yyzzzzzyzzy{zz{zzzzyzyzz{zz{{zy{{zzyyzzy{zz{{z{{zyzyzzzy{z|{{z{{yyzzzzz{z{{{z{{{{zzz{zzy{{{{{{{{zyz{{zzz{zzzz{z{z{{{z{zz{z{{{|z{zz|z{zzz{z{|{||{{{zzzzzz{z{{{{|{zzzzzzzy{|{{||{{z{zzz{||{{z{{{z{{{z{z{z{z|{z{{{{z{{{{zzz{{{{{||{{zz{zz{{z{z{{{|{{{zz{|zz{|{{{|{|{{y{{{{{{{z|{||||{z{zzzzz|{{z{{zz{{z{zy{{z|zzzzzzzyz{zyyyzzzz{z{zxyzyyyyzzz{zzz{{{xzzyzyzzzy{zzz{yzzzzzzzzyzzz{{zyzyzzzyy{{zzzzzyz{yzzyyy{zzy{{yzyzyzzyyz{y{zzzzzzyyzzyyzzzzzzzzyzzzzzxyzzzz{z{{yzzzyxyzzzzzz{{zzzzyyzzyz{z{{z{zzzzyzyzzz{zzzz{{zzyzzzyyyz{z{zz{zyzzzzzyz{zz{{{{zyzzyzzzz{zzzyz{zzzzzy{y{{{zz{{{zzzzz{zx{{{z{{z{zzzz|zzyy{{{z{|{zzzyzyzz{{{{{z|{y{zzzzz{{{{zzz{{zy{zzz{zz{z{|{|{z{{z{y{{{{zz{{{zzzzz{{zzz{{{z{||{zzzy{zy||{z{|{|{{zzzz|||z{|z|{||zz{zz{zz{{{|{|z{{{zz{{{{{z{{|{{{{zzzz{{{{{{|{{|{{z{|{{z{{{{{|{{{{zzz{{z{{{{zz||{{zzzzzz{{|{z}|z{zzzzyyzzz{{{{{{{zyzzzy{zz{zzz{{z{yzzzzzzz{zyz{{zzyyzzzzzzzzz{{z{yyyzzzzzz{{z{z{zzyzyzzyz{z{{|z{zyzzzzzzy{zyz{zyz{zzyzzyz{{yzz{zzz{zzyzzzzzzzz{{zzyy{yzyz{zz{{{{zyyyyzzzzz{{{{zz{zyzyxzzz{{zz{{{zzzzzzzy{z{zzz{zz{zzzyzzzz{{z{{{zzzzz{{z{zz{{{{{{zy{zyzyz{{zzz{|z{zyzy{y{{{{{{|{zzzzzzyz{{|{y{{{{{{{{{z{{{{zz{|{{{zzzyzz{|{{z{{zz{zz{zzz{{{{{{||{{{y{z{z{{{{||{{zzzzzz{{{{{{z||{z{zzz{zz||||{{{{{{{{{yzz{||z{{{|z{{{zz|{{{{{||{|{z{{z{z{z|||||||z{{z{{{{{|{{||{{|{{{zz{{z{{||z{|{{{z{zz{|{{{{|||{{{z{zzz|{z{{|||{|{{z{z{||{|{{{z{{{zzz{z{{{{{{z{yyyyzyyy{zzzz{zzzyzzyyyyyzz{zz{|zzzzz{zzz{{zzzzyzy{zzzzzzzzz{zz{{zzyyzzy{zz{z{{zzy{zyzzyy{zzzzzy{yzyyzyzzz|yzzzz{zzzyyyzyzy{{z{{yzyzyyzyyzyzzzzz{yyyyzyzzzzz{z{{zzzzyyxyzzz{{{{{zyzzyxzyz{zzz{{zzyyyz{zyzzzzzzzzzzyzzzyyzz{z{z{{zyzzzyzyzzzzyzz{zyzy{yzz{{{zz|{|z{zzzzzzz{{{{z{{zyzyzzyyzz{{{z{{{zzzzxzy{z{{z|{|{{z|yzzz{{{{|{{{z{zzzz{{z{{{{{{{zz{{z{yzz{z{{{{{{yzzz{zz{{{z{z|z{zz{{{{y{||{{{{|{{z{|yz{{{zz{{|{{zz{{{{{z|}{{{||{zzzz{{z|{{|||{{|{zz{{{{{z{|{{|z{{z{zzz{|{{{||{{{{zz{{{{y|{{{{|{{{{zzyzz{|{|z{{{zzz{z{zzz|{||{zzz{yzyzzyz{zzzyy{z{yzyyzyzz{zzyzzzzyyzyzyz{{z{{{{zyyzzyzyzyzzyz{zzyzyyyzyzzzzzzz|zyzzzzzyy{yzzz|zyyzyzyyzxz{yzyzyz{zxzzyyzyzzzzz{yzyyzzyyyz{yzzzzyzzzyzxz{zzy{zz{yyyzzzyyz{z{{z{|zzyzzyzyzzzzzzzzzzyzzyyzyzyz{{{z{yzzzzyyzzz{zz|zzyzyyyyz{zzyzzz{zzzzzyzzzzzzzz|{zzzzyzyz{z{z{z{zz{zyzxzzz{{{{{zzzz{z{xzy{z{{{{{zzzzz{zzz{{{{{zz|zzzyzzz{zz|{{{z{z{zzzzzz{z{z{zz{{zzzzyzz{{{{zz{{zzyzy{y{{{{{z{{|zz{zzy{z{{zzz{{|{z{zy{zz{|{|{{{{{z{{zz{{{zz{{{{z{zz{z{z{z{{{|{|{{{z{{{{zz{|{{|{{{|{{{{{{z{{|z{{|{z|y{zz{z}{{{{|{zz{zzzzz{{zz{|{yzzyyzzzyz{{zzzz{zzzzzyzyz{{{{zz{zzyyyzzzzz{y{{zzzzzyyyzzzz{{zyzz{{{yzzyzz{z{zz{|{zzyzzzzzzzzzz{{{zzzzzy{{z{{zz{zzzzzzyyyzz{zzz{zzzzyyzzz{zzz{{yzzzzzxyyzzzz{|{z{yyzyyzzyz{{{z{{y|zzzzzyyzzzzzz{{zyzyyzzzzzyzz{{zzy{z{zyy{{z{{{{{zzzzzzzzzzz{z{z{zyzzzyzz|zzzz{{{z{yyzzzzz{|zzz{{{z{zzz{yy{z{{|z{z{yzzzzz{|{{z{|{z{zzz{{z{{}{{{{{|{zzz{z{{{z||||{zzzzz{{{{{{{{|{{{y{{zyzzz{|{{{{{{zz{zzzz{{{{{||{{{{zz{{{z|{{|{{{{{zzzz{{|{{{|z|}{|{{yz{z{{{{{z{|{{zz{|z{{{{{{{|{|{{{z{zz{z{{{{{|z{zzzzzz{z{z|||{{{{|{{{{{{{zzz|z{zzzy{zz{z{{{{zzzzzzzzzzzzz{zz{{zzzzyyz{{z{zz{{{zzzzy{zyzzzzz{zzzyzyzyyyzzz{{zzzzzzyzyyzzy|{y|{{{{zyyzzyzy{z{{z|zyzz{xyyz{{zz{{{zyzyyyz{zzzzzzyz{zyyyzzyzzzzz{zzyzzyzyz{yzzz{|z{zyzyyzyxzzzz{z{{zzyzyyyyyz{zz{{{yyzyyyyzy{zz{z{zz{yzyzzyzz{z{{{zzzzyzzzy{{{{z{{{zyzzzyzz{z{z{{{{zzzzz{yyz{z{{{y{zzzzzzz{z{zz{{{{zz{zy{yz{{zz|y{z{zzz{zzz{{{{{zz||z{z{zzy{{z{{{||{zz|z{{z{{z|{{||zzz{zz{{z{{z{{|{|z{{{z{{{||{z{{{{zzzz{|{z|{{{{{{{{{{{{{z{|{|{|{{|{{{{z{{{{{|{||{{y{{zzz{|{{{|{{|{zzz{zz{{{{{|||{{z{{y{zz{|||{{{|{zz{z{{z{{|{|z{z{z{{{{z{{{|{{{zzyyzyyyzzz{{{{yy{yzyyzyyyyzzz{{|zzzzyzyzzz{yzzz{zzzzyzyzzzzz{z{{zyzzyyx{yzy{{zzz{zzyzyzzzzzzzz{zzyzzz{zyyyzzzzzzzzzzyyzyy{zy{yzz{zzyyzyyzzz{z{z{zyyzzyyyyyzz{{{zzyyzzzyyzzz|z{z{zzzyyz{yyz{{{zz{{zzyzyyyyy{{zz|z{zzz{zzyyzzz{z{z{zzyzzzzxy{zzy{{|z{{zyyzy{z{{{{zzz{zzzyzz{{{{{z{zyzzz{yzzyz|zzz{{zzz{{yzz{{zzzz{zyyzzzyzz{{{zzz{{z{yzz{zzzzz{{{|{{yzzzz{zz{{{{{{{z{zzyzzz{|{z{|{{|yz{{yzz{{{{{{{{|z{zz{z{{zz{{{{{|zz{z{{zz|{||z{|{{{{{zzz{{{}{|{{{yzzzzzz{z{{{{||{{|{{{{zz{{|{{|{z{zz{z{z{|{{{||{{{{zzzzy{|{{{{{{{{{z{zzz{|{{{{z{zzzxzxzxz{zzzzzzzzzyyyzyzzzyz{{{yzzzzyzyzz{yz{zzzz{yyyzy{yzzzzzzzzzyyzzy{zz{zzz{zyzyyyzx{{zzzzzzyzyzzyyyzyyzyzzyyyzyyzxzzzz|{zzzzyxyzyyyzzzy{zzyyyyzxzzzzzzz{zzzz{zzyyyyzzzyzzzzzyzyzyyxyzzz{{{{zxyzyyyyzzzzz{yzzzzyzyyyzz{zzyzzz{yyzzyzzzzzy{{{zyzzyzyzzz{zz|{zyzzyyzyyyzzzz{{{{zz{zy{yzzz{z{{zzzzyzzzy{z{{{{{{zzz{zzyz{{{z{{{{yyzz{z{zz{{{{|{|y{zzzz{z{{zz{{|{zzzzz{z{{{{|yy{{{z{zzzzzz{{{{{|zyz{{zzz{{{{{z|{{{z{{zzzz{|{|{{{z{zz{{{{z{{{{{{{{{{{zz{z{{{z{{|{{{zz{{|z{{z{|{|z|{zzzz{zzz{|z{|{{{zzz{yy{{{z{{z{{zzzzzzzz{{{z{zzzzyyzyzyyzz{zzz{{zzzyzyyzzzz{z{z{{z{yyzzy{zzz{{|z{zzyyyzyzz{zyz{{zzzzyzzyzzzz{{z|{zzyzzyyzy{zy{{yyyyzzyyzz{zz{zzzzxzyzzzzyzz{z{z{zzzyyzzz{zz{zzzzyyzzxzyzzz{zz{{z{zyyzzzyz{{zz{{z{yzyzyzyzzy{yzy{yyzyzyyyzzzzzz{zzz{z{zzyzzzz|{{z{zzy{zyyzzzzz{z{yzz{yzyyzzz{z{z{y{zzyz{zzz{{zz{|zzzzz{zzz|{{{{|{{zzyzzy{{{|z{z{zzzz{{{zz{{{zz|{zzy{z{{{z|{{{{{|{{{z{{{z{{{zzz{z{{zzzzzzyz{{{{{|{{zzz{zzz{z{{{|{{{z{zyz{{{{z{|{{||zz|z{{z{{{|z{{|{zz{{z{z|{{|{{{{z{{zzzz{{{|{{||||{{z{z{z|{z||{{|{{zz{{zz{{{{{{|{{|{{{z{z{|||{{{zzzzz{{zzz{{z{{zz{zzzzyyzzzzz{zzzzyyzxyyyzz{{{{{|zzz{yzzyyz{zz{{zzzzzyyzzzz{{zzz{yyzyyyzyyz{zz{zzz{zzzzzyz{zzy{zzzzzyzyyzyy{zz{z{zzyyyz{zzyzz{z{{zyzzzyzyyzzzz{{zzyz{zyyzzz{{z{zzzyzyyzzy{{{{zzzzzzzzzzzyz{zyzzz{yyzyyyyyz{z{z|{zzyyzzyyz{{zzz{{z{zyz{zyzz{zz{{{|{zyzzzy{{{{zz{z{zzzzzzzzz{{z{{|{zzzy{zzz{z{{zzz{zy{z{zy{{z{{{{{{{{{zzzyz{{{{{{{{{{{{{{zz{z{{{{{|zzz{|{zz{{{||||{{{z{{zzz{{{{{{{{|zz{|{{z|||{{{{{|z|{z{z{{{{{{||{{{zz{|{{z{||{{{}{{{z{z{z{{z{{{{{{z{z{|{{z{{{{{||{z{{{zzz{{{||{|{zz{zzzzz{{{|{{||{zz{y{|z{|{{{|{z{{{zzyzz{{{{{{z|zyzyyyzyzyzz{zzzzyzzyzzz{{zzyzz{{zzzzzzzzzzz{{{{{yzzzzzyz{z{zzzz{z{zyyyz{z{z{{zzzz{yzzzzyzzzz{{z{yyzyyzyzz{zzzzzzzzzyzzyzzy{zz{{yzzy{xyyzzzzzz{zzzyyyzyyz{{zz{{{{zzzzyyxzz{{|z{zzyyyzyyyz{zzyzzzzy{zzzyyy{zzz{zzz{zzzzzz{zzzz{{z{{zzzzzz|y{zz{z{{zzyzyyz{{{zz{{{zzzyyzzzzz|{{{{{zzzz{yzzz{{{||{{|yzzzyyz{{zz|z{{zzzz{zzz{{zzy{{{zz{z{y{z{{{{|{{{z{z{{{zz{{{{{||{{zzzz{yz{{{{{{|z{z{zzzz|{|{{z{}{zz{{{z{zz{{|{{||{{z{{|z{{|{{{{||{zz{zz{{{{|||||{{{zz{{zz{||{{{||{zzzzz{z|z||{|{{{z{z{{zzz|{|{{|{|{z{{zzz{{z{{||{{{{{zzzy{{|{{zyzxzyzxyyxy{zzz{{{y{yyzyyyzzzzz{{{{yzyyyzy{{yz{{|zyzxzzzyyyz{zzzzzzzzyyzyyzy{zz{{zzyzyzzzy{zzyy{zz{zzyzyyzzzy{yzz{yyyzyzzyzy{zz{yzyyyzzyyyzzzz{{{{yyzzyyyzzz{zzz{{zzzyyyyyzzzyzz{{zyzzyyyyzz{zzzzyz{zyyyzyz{zzz{{{yzzzyzzyyyzz{z{zzyyzzzzzyz{zz{z{yzyyzz{zzzxzyz{zzzzyzzyyz{{z{z{zz{zzyyzyzz{{z{z{{yzz{zx{zzz{{zz{{zzzzyzz{{zy{{{z{zzyz{y{y{|{{{{{zz{{{z{z{{z{{|{{{yz{zzzz{|{{{{|z{zz{{zzz{{z{{z|zzzzzz{{zzzz{{|{{{{zzzzz{{|{{|z|{{{{z{zz{{{{{{{{{|z{{{{{z{{zz{{{{{zz{|{yz{{{||{{{{zzzz{zzz{{{|{|{z{z{zzzz{{{|z{{|zz{zzzzz{yzz{z{zyyyyzyzyzz{yzyz{zzyzyyyzzzzz{z{y{yyyyzz{z{zz{zz{zyzzyzzyzz{zzz{{zyzyzzzzzzzyzzz{zzyzzyyyyzzzzz{zyyzzxzyzzz{yy{zyyzzyzzyzyzz{zz{zzzzxyyzyzz{zy{zyz{yzxzxzzzzz{z{{zzyzyyyyy{z{zz{{zyzyyyzyzzzyz{{{zyzyzzzyyz{zz|{zzy{zy{zyz{z{{z{{zzzzzyyzzzzz{yzzz{zyyyxzzz{zz{z{zyyzzzzzzy{z{{z{zyyzzzxz|zz{{z{{z{yzyzzy{{zz{z{{{zzzzzz{{z{{{zz{z{zzzzyz{{{{{|{zz{{{zz{zz|z{{|{{{z{zzzzz{{{{{{|{|{z{zzy{z{{{{|{{{zzzzz{z{|{{|{{{{y{zz{z{{{}}{{{|{{{{{{z{{{{{{{{{|z{z{yz{|{{{|{|||{{zz{y{{{{|{{{|{{{zz{z{z{{z{{||{zzzzz{y|{{{z{{{{{zz{zzz{{z{zz{zzyzyzzzyzy{zz{zzzyzyzzzzyy{yz|{z{zzyzyzyzyzzz{z{zzyzzzzzz{|{zzz{zyzyyyzxyzzyzzyzyzyyyzzyzzz{zz{zzzzzzy{yyzzzz{{z{zzyyzzz{yyz{z{{yzzyzzzxzzyzyzzzzzyzyyyzyzyz{z{{{{{zy{yzz{{z{z{zzzyyyyzzzzzzzzzzzzyy{zyyyzzzy|zz{yyyzzyz{z{z{zz{zz{yzzzyzz||z{z{y{zzzzzz{z{z{{{{yzyzzzzz{{{z{z{{{{zzyzzzz{{z{{|{{yzzzzyy{||{z{|{zzyzz{zzz{|{z|{{zz{{z{yz{z{{{|{{z{zzy{{zzz{|{|{{z{zzzzzz{{|{{{{{{zz{|yzz{{{{{|||zyz{z{{{z{{{z|{{|z{z{{{{{|{{{z{{{{{zz{z{{{||{}{{|z{{zzz{z|{{|{{||{{{zz{{{|||{|||{{zz{{z{{z{{{|{{|{{zzzz{{{|{{{{z{z{zzyzx{{{{{{zzzyyyzzzyyz{zzzzzzyyyyyyzx{{z{{{zzzz{yyzy{zzzzz{z{zzyyzzzxz{{yz{zzyyzyyyyzzzz{zyzzz{yyzzxzyzzyzzzzzyzyzxyzz{yyzzz{zzyzzyzyzzy{zzzyyyzyyyzy{{z{z{zzzzyzzyzz{{z{zz{{zzyzyzz{xzz{{z{zz{yzyyyzzzzzzzzzzyyzzyyy{yyz{z{{yyzyyzxz{zzz{{{zzzy{zzyzz{z{{{{zzzzyz{zzzz{{{{zzz{{zyzzz{z{zz{|zyzzzyxyz{zzz{{|zzzzzzz{{zzz{z{{{yz{zyzz{z{zz{z{zz{z{zz{z|{{z|{{zz{z{z{z{{{||{|{{zzzzzzz{{|{{{{z{z{z{z{z{||{{||{z{{zz{{z{{{{{|{|{{{{{zzz{||{{|||{zz|{zzz{z{{{{{||{z|{{z{{{{{{|{|{|zzz{z{|{{{{|{|z{zzz{z{{{z{{{{||{zyz{zz{|z{{z{|{{z{zzzzz{{zz{zzyyyxxzyyzz{zzyz{zzxzzzyxzzzz{zyzzyyyyzzyz{zzzy{z{zzyyyyyzy{zzyzzzzyxxzyyzyzzz{zzyyyzzxzyzzyyzz{zzzyyzyyz{z{{y{zzzyyyzyyzyzzzzz{zyyzyyyyzyzzz{zz{yzzyxxxzy{{y{zz{{yzzzzyz{z{{zyz{yyyzyyzzxzyy{{{zzxyyyyyyyzzzy{z{y{zzyzyyzzzzzz{zzyzyzyzyzzyzzzz{yzzzzzz{zzzzzz{{y{zyyzyzz{zzz{{zzyzzyyzzzz{{{{zzzyz{{xzyzz{{z{|{zzzzzzzy{{{{zzzz{z{{z{y{{{z|{{{{z{yzzzzz{{z{y{{{{z{yzz{zzzzz{{|{{z{zzyzz{zzz{{{{zz{zz{{zz{z{{|||{zz{{zz{z{{{{|{{{zz{z{z{{{|{{z{{{z{z{zzzz{{{zz{{|zy{{y{{{{{|{{||{{zyyzzzz{zzz{{{zzzz{{zzz{{{{{{|{zzzz{{zz{{|zzzzzyzyyzzyy{zzzzyzzyzxzxyy{zzzzzzzzzyyyyzyzzzzz|{{{yzyzzzyz{z{zzzzzzzyyzzyzzz{yzy{zyzyzyyzyz{zzz{zzzzyzyxyzz{{{zzzyzy{yzyyy{{z{zzzyyyyzyyzz{yzzzzzzyzxzzzzy{zy{z{zyyzyyyzyz{{zz{{{zzyzzzzyzzzzzzzzzzzzyyxyzzyzz{zzyz{zyyyyzyzz{z{{yyzyzyzzy{|zz{zzz{zyyzzyz{z{z{{{zzzyyyz{z{{{{{z{zy{yzyzyy{zzz{{{{zzzz{yzz{z|{z{{zzz{zzzz{zz{z{{{{z{zz{zzz|{{z{{{zy{{{z|z{|zzz{z{zzyzyzzz{{{|z{|{{zzz{zzz{||y{||{z{z{{z{{{|{{z|{|{z{{zzz{{|{{{z{{{zz{{z{{|z{{{{|{{z{z{z{z|z|{{zz|{z{{{{{{{{{{{||{z|{y{zyz{|z{z{|z{zzzz{zz|z{{z{|{zz{zyyzy{{{{{zyz{yyzx{zyzzzzzy{{zzyzzxyyz{{z|{{|{zyyzyzxzzyzz{z{zyzyy{zzz{zzz{{zyzyyzyzy{zzyz{zzzz{yyzyy{{zzz{z{{zzzzzzy{z{yy{{{{zzzzyyzz{zzyz{zzz{yzyzyzzzzy{zz{zyyyyzzz{zyzz{{{yyyyyz{zzy{z{{zzzzzyyyyz{y{{{{{yzzyyyzyzyzzz{zzzzzyzzzyzzzz{z{zzzzyyxzy{{z{{{zzzz{zzxzzzz{{z{{zyyz{zyzzzz{{z{zz{zzzzy{zzz{{z{{{{z{zzz{zz{{{{{|{{zzzyzz{{{z{{zz{zz{{{zzz{z{{{|{{zzz{{{z{{yzz{{z{{zzzz{{z|{z|{{{{{zzz{{z{{{{zz{{{{z{z{{{z{z{{{{z|{zzz{{zz{{{z{z|{{z{{z{z{|{{|{|{{|z{z{{z{{{{z{{||{z|{|{zz{z{|{|{{{zz{{zz{{|{z|||{{{z{{{zzz{{|{{|{{z{zzz{z{z{z{zyzyzzyyyyyyz{yzzz{zyyzzyzy{z{{{zzz{zzxzzxzzz{zz{z{yzzyzyyxzyzzz{{zzyyyyxyxz{zz{{z{yzyxyzzyzzzyzz{yzyzyyyzzzzzz{zz{zyzzyzyzzyyzzzz{zzzzzyzyzz{z{{zzzyzzyyyyz{zzzzzzzzzzzyxzzzzyzz{{zzyy{yyzyz{zyy{|zzyzyzyzz{{zy{zzyzzzzyzyzz{y{{zzzyyyzyzyz{{yz{{zzzzyyxyz{zzz{{zzzzzyyzyz{{{z{{zzz{{{yzzyyz{{{zzy{yzyyyyy{z{{{z|{|zzzzzyzzz{{z|{z{{zyzzzzz{y{{{{zzz{{zzz{{{{|zz{{zz{{zzzz{{zz{z|zzyzz{z{{{|{{{z|{zzzz{{{zz|z{|{{||y{z{z{{z{|{{|{{{zzzz{{z{{z{{{|}{zzzz{zz{{|{|||{{z{z{{z{{||{{{z{{{zzz{zz{|{{{{||{{{{{zz{z{zz{{{{z{zzzzzz{{{{zz{zzyxyyzyyzzzzyzz{yyzyzzyyzzz{z{zzzyyyyzyzzyzzzz{{zyzzyzyyzzzzzz{zyyyxyyyyzzz{zz{{zzzzyyzzx{yyyzzzzyzyzyyzzzzzyzzzzyyyzzyyzyzyzz{zyzzyyyzyy{zyzzyzzzzzxzzzzz{zzzzyzzzzzyyyxzzzzyzzzz{zzyyyyzzzyzzzzyyzyzzzz{zzzzz{yyzzzzyyzzzzz{{yzyzyzzyyzzzz{{{{{zzyyzzz{{z{zz{|yzyzyzyzzzz{z{{|zz{z{xzzzz{z{{zzyyzyzzyy{z{z{zz{zzyy{yz{zz{z{{z{{zzzzzyzz{{{{{{{z{zz{zzz{|{{{|{{{zz{zyyzz{{{{{{z{{{{{{{z{{{zz|{|{zzzzz{{{{{{{{|{zz{zz{{z{{{{|{|||z{{z{z{{{{{{{{zzzz{zzz{{{z{{z{|{{{z{z{{{z{{{|{|zzz{{{|{{|{{{{z{z{zyzzzy{{{{{{{z{z{{zyyz{{{z{z{{yzyyzyzyz{yzz{{zyyzyzzyxyzz{z{zzzzxyzzzyz{zyz|{{zzyyzzyzzzz{yy{zyyyxyzyxzzy{{{{{zyyzyyyx{zyzzzzzzyyyzyyzzzzzzzzzzyzzxzzzzyyzyzzzyyzyzyxyyzzzyz{yzyyyxyyy{{{z{{z{zzzyyzyyyzzzyzzzzyxzzzyxy{zzyz{{{yyyzyyzzzzzz{z{yzzyzzyyzz{z{z{zyyyzzz{zz{yzzz{yyzzzzzzzz{zzz{{zzzzzyyyz{zz{z{y{yzz{zzzyzzzzz{zzzyzzyzz{zz{z{{{{zzyzzzzz{{{zzz{{{zzz{yyzz|{{z{z{{z{zzzzyz{z{{|z{zzz{zyzy{zz{z|||{zz{zz|z{|{{{{||z{zyy|zzzzz{|{|{|zz{yzzz{{{{|{|{{{{{zzzz{z{{z{{{{zzzz{{yz|{zz{}{{{zzzzzz{{{{{|{{{z{yyzzzz{{z{z{{{{zz{{zy{|z{{{z{z{{zzyzz{zzzz{zzzyzzzzyzyz{zy{{{zzzzzyzyyzzzz{{zzzyzzzyzzzz{{zz{zzzyzzyy{zz{{y{{zzzyzyzxyz{zzzzzyzzzzzyzz{{zz{{{zzzyzzzyzz{yzy{zyzyyx{yzz{y{y{zzzzz{zzzyyzzzzzzyzzyzxyyyzzzzz{{{z{yyyxzyz{{z{z{{zzzzzyzyzzzzzz{{yyzzyzzyy{z{{{{{y{z{zzyyzzzz{{{{zyyzzzzz{z{zyz{|zyz{yyzzzzzzz{{{{yzzyz{z{{{{z|{|z{zyzyzyzz{{z{{zzz{{yzyy{{|zz{||{yy{z{yz{{{{z{{zzzy{{zy{z{{|z|{{zzzzzzzz{{{|{{||{zy{z{y{|{|{{{{{{zzyzyzy||{{{z|||{zzz|{{||{{{{z||z{{z{{zz|z{{|{{{z{{|z{y|{{{{|{{{zzzzzzz|{{{|{{{{{z{{{{{{{z{|{|||z{{{{z{{{{{{{|{{z{{{{z{{||{||{{{z{z{zzzz{{{zzy{zyzy{y{zyzzzyyzzzzzzyzzyzz{z{z{z{xyyzzyzy{zzz{{yzyyzxzxzzzzzyz{{{yyzyzyzyzzzz{{{zzzxy{yyzz{yzyz{zyzyyyyyyy{zzz{zzzyzyyzyzyzzzzzzyzzyzyyyxzzzzzzyzxyyyyzyzz{{zzzz{xzzyzzzy{{{zzzzzyzyzz{yzzyzz{yyzzzy{yz{zzy{z{z{{yzzyyzy|z{zzz{{{zyyzyz{{z{zzzz{zyzyzyy{{zy{z{{{zyz{yyyz{z{{{{z{zz{zzy{yz{{{{y{zzz{yzyzzz{{zzz{{zzzz{yz{z{z{z{{{zzzz{zzz{{{zz{|{{{zz{{zz{{{{z{{{{zzzyzzzz|{|{{{z{zz{zzz{{{{z|{{|{{z{z|{yzz{{{||z{zz{{{z{{|{{|{}{{z{zz{zz{{|{{{{{{yzzz{zz{{{|z{{|{{{zzz{|{{z{{{|{{{z{yz{{{{{{||{{{{z{z{zz{{z|{|{{z{z{zzzy{z{|{{zyzyzzxyzxzzzzzz{yyzyyyyzzzzzyzzzzzyyyyzzyyyzzz{{z{zzzyzyyyzz{yyzzzzyxxyyyz{zzyz{{zyzxyzzyz{yzzyz{yzzyyyyyzzzyyzyzzzyyyzzzyyyz{z{{zzzyyzyyy{zz{yzzyzzyyzxyyzzzz{z{zyzyyzyy{zz{zz{zzyyyxzyyyzzzzz{{zzyzyyzyzzz{zz{zzxyzyyyyz{{{zzzzzyyzyyzyzzzyyzz|yyzyzy{yzzz{{zyzzyzzzyzzzzz{zzzyzyzz{yyyzzz{{|{zzz{z{zzy{{{zzz{|zzz{zyzz}z{{z{{zyzyyz|zzz|z{{{{{y{zzz{{z{{{{z{|{zzzzzyzyz{{{{{}z{z{zzzzy{||{z{{|{zzyzz{{zzz{{||||yzz{z{{{{{{|{{z{z{zzz{{{z{{{{{{{zz{{{z{{zzzz|||{|z{{zzz{zz{{{{|zz{{{z{z{{|{{{|{{zz{zzzz{{{z|{{|zzz{zz{{{{{zz{zzyyyyyzyzzz{zyz{{zyyyzxzyzyzzzzzzzzzyyzzzyy{z{z{zzzzyyzyzyyzzy{{zyzzyyyyyyzzzzzz{yz{yzzzyy{zzz{zyzyyzyzyyzzzzzzzzyyzyyzzy{zzzzzzzyzzyzyzzyz{yzz{zzyyzyyxzzyzzzz{zzzz{yyyzyyz{{{{zzzyxzyzyyyzzzzzzzyyzyyzyyzz{z{z{yyy{zyzyzzzzz{{yzzyyzzyyz{zzzzz{zzzzyzzyzz{zzzz|zzzzyyzyzyzzz{|{zy{yyz{zy{zzz{zz{zzzyzyy{z|z{z{{zyzzzzzy{{{z{{z{z{zyz{{zz{{|{{{{z{zzzzz{z{{{z{{|{z{zzy{z{{|{{{{|{zzz{z{z{{{z{z{{zzzyzzz{{{z{|{{{zzzz{z{zz{{{z{{}{{{{{z{z{z{{{||{{yz{{{{z{{{z{z{{{{zzzz{{|{{{{|{{z{zzzzz{{{zz{{{zzzz{zz{z{{{{{|{|{zzzzz{zz|zz{yzzyyzzzzyzzz{{zzzzzzzzzzyyzzy{z{z{zzzzzzzzzz{{{{zzzyyyzzz{zzyzyzzzzyzyzzzyzzzzzz{{{yzzzyyy{zzzyz{zy{zyyzyyzzz{yz{zzzyzzzyyzzzzzzzzyzzyzzyzzzz{{zzzzzyyyzyzz{z{z{z{yzzyyzzyyzzzzz{{{y{yyzzyyz|zz{zzzyyyzzzzz{zzyz{zzyzzzzyyzzz{z{zzzyzzzyyzzzzz{{z{{zzzzz{yzzzzz{{{zyzzyzzzzzzzz{{|{yzzzyzzz{{{{{{z{zz{yzzyzzz|{{|zzzxzzzyz{{{zz{z|yzzz{{zz{|{{z{{{z{zzz{{z{|{{{{{|z{zz{zzyz{{{{{{{zyz{z{{z{{{z{z||{zz{z|{zz{{z{|{{{{zz{{{z{{z|{|{|{zz|zzz{{{{{||{|{zzz{zy{{{{{{|{|{{{{{{{{|{{|{|{{{{zy{zzzz{{{{||{{zy{zz{zz|{|{|{zyz{yzzz{{|{{{{{{{zzzyzyzyzzzzz{{zyzzyyyyyzz{zzz{zyzzzzzz{zzz{z{{zzy{yyyzyz{zzy{zzzy{zzyy{z{zzzzzzyzzyzzxyzyzy{zyzzyyyzyyzyzzzyyzzzyyyyyzzzyzyzzzyyyyzyzyyz{zzy{zyzyzzyyyy{zzz{z{zyzzyyyyzz{zzzzzzzyyzyyyyyzzyzzzzzzyyyzyzzzzz{{{yz{yzzyyzzz{yz{zyzyyzyzyz{zzzz{{zzyzzy|zzzzzzzzyzzzzyzzz{z{z|yz|zzzz{zzzz{{z{{zz{zzzzzzy{zzz{{{{zyz{{zzz{{{{zz{{z{{zz{zzzz{{|{{zz{{y{{zzyzzzz{|{zzz{zzyzz{||||{{zzyzzz{z{z{{{||{{z{z{z{zz{zz{|z{{y{z{{{{{{{{z|{{{z{zzz{zz{{{z{|z{yzzzzz{{zz|{{{{{{{z{z{z{{{{{{{|{{zzz{{zz{zz{{|{{{{{|zzz{{|{z{|{zz{zzzzz{z{{{yzzyzzxyyyxy{zzzyzz{zzyzyyyzzzzzyzy{yzxzyzyzy{{zz{yyyzzyyyzzz{zz{{{yyyxyyyyzzyzz{{{yyzyyyzyyzzzzz{yyyzzzyxyyyzzyzzzyyzyyzzyzzzzzzyzyyzxzyzzz{{zyzyyzzyzyyyyyz{z{yzzyzzxyzyxzz{zzz{zyzzzzyzyyzzzz{yzzzzyzxyyyyyzzzzzyzzyyxzzzzzzz{zzyyyzzyz{zzzxz|zzz{zyzyzyzzz{z{z{zzzzyzyyz{{zz{{yzzzzyzzyyzyz{{zyzzzxzzzzz{{yzy{zyyz{{yzzy{{zzz{zz{yzzzz{{z{z{z{{y{zzzyzz{{z{z{{zyzz{{yy{{{{{{{|{{zzzzyzzz{{{{z||z{z{z{{{{zzz{zz|{{zzy{{zz|{|{{{{{z{{zyzz{{{z{{{|zy{zz{y{{z{|z|||{{z{{zzzzz{{{z{{z{{z{z{zy{{{{z{{{z{zyzzzz{z|{{{{z{{z{{{z{|{z{yzzzyyzyyyxyzzzyzzzzyzzyz{xy{{y{zz{{zzyyzyyyy{zz{z{yyyyyyyzy{z{z{z{zyxzyyyxzyz{zzz{zyyzzzyyzzz{zz{zyzyyzzyzzy{zyz{z{yzzyyzyyyzzzzyzzzzyyyyyyzzy{z{yzzyzyzxyyzzzzzz{zzy{yxyyzzz{zzz{zyyyzyyzzzzz{{zzzyyyyyyzzzzzzzzzzzxyzzyzz|zzzz{zyyyyyzyyzzzzy{{{zyzzyyzz{z{{z{z{yzzyzzzz{{zzz{{{zyzz{zy{z{z{z{z{zyz{zyzzz{{zzz{{{yzyzzz{zzz{{{{{z{zz{yzzz{{{{z{{z{z{zzzzzz{{z{{z{zy{yxzy{|{z{{{|{yy{zz{z{{{{{{|{zz{z{{{{{z{||{{{zzzz{zzzz{{z{{{{{y{{zzzzz{{{{|{{{zz{{z{z|{{z{{|}{zz|{{z{||{{{{{{zz{zyzyzzzz{{|{{z{z{z{zy{{{|{{{|{{{yzzzz{{{{z{zzyzzzyyyyz|z{yzzzzyxzzyyyzzyz{z{zzyzyyzzy{zzz{zzzzzzzzyzzzz{zyzz{zzyyzyyy{zzzz{z{yzyyzzyzzz{yyzz{yzzyyyyz{zzyy{zzzyzy{zyzyzzzzyz{yyyyzyzzyzzzzy{zzzzzzyyyzyz{zzy{zyzzyzyzzy{zzzzzyzzyxzyyzzzy{{zzzzzyzxzzyzzz{{z{zyzzyzzzzzzy{zz{zyzzyzyyzz{{{z{{zzzyxyyyzzzyzz{{zzzzyzyzyz{zzz{zzzz{{yyzz{z{z|{zzzzzzzzzz{yzz{{zzz{zzzzzy{zzz{y{z{zz{zy{zz{{{{{{xyyyyzz{zzz|{z{{zyzz{zyzzz{z{{{zzz{z{zzzz|{{{{|{z{{yz{z{z|z{{{{|{z{zzzzz{{z{{|{{|zzyzz{zz{z{{{{{zz{y|{z{zz|{{|{{z{zz{zyz{{{|{{{{zzzzzzzzz{z{{|||z{zzzy{{{{{{{{{{z{{zzyz{{{zz{zzzyzyxyzyyz{{yzyzzzzyzyzyzzzzz{{|zyyyyyyzzzzz{zzzzyyyyyzyxyzzzyy{{yzyyzyzyyzz{{{zzy{yyyyyyyzzyz{zyzyyzzyyyzy{zzzyzzyyyxzyyzz{{yzz{yyyxzyzyzzyyzzzxyzzzzzyyzy{y{zzzzzzyyyzxzzzzzy{yzyyyyyyyzzyzzz{zzzzzyyzyzzzyyzyzyy{yyzyyyzz{zzzz{yzxzyzyz{{z{y{zzz{{zy{zz{{{{zz{zyzyyzzzyz{zyz{zzzzyzyzzz{zzzzzz{zzz{yzyy{zzz{{z{zyyyxyz{{z{yz{z{zzz{zzz{zz{z{|{zzzz{zzy{{z{|{|{{zzzzyxzyz|{{z{{{zz{zzzz{|zz{|{|z{{zzz{{z{{{z{z{{zzzz{{zz||{{{|{|z{{zy{z|z||{{{{{z{zyzz{{{z{{{{|zz{z{zz{z{z{z|{{|zzzzzz{z{{{{|{{{z{zz{yz{{zzy{{{z{{zzyzyz{{zyzyyzyzyyyyyyzzzz{{zyyzzzyyyz{z|z{z{z{zyyy{yzyzz{{zzzzzzzyzzyz{yyxz{{zyyyyyy{{{zzzz{zxzzyyyyzzzzz{yzzzzzzzxzzzz{zzyzzzzyzzyyzzyzyzzzyxyzyyzyy{yzzzzzyzyyyzyzyzzzzzz{yyzzyzyzyzzzyy{zyyzzyyzyzzyzxy{zzzzyyyzyy{zyzz{zzyzyz{zy{zz{yz{{zyyyyyzyzz{zy{zzzzyyyxz{{zzz{{{{yzzzyy{zz{{zzz{{zz{zyyyzz{z{{{zyzzzy{zzzzz{z{{|z{zyyyzyyz{{z{z{{zyzzzzyyzzz{{z{{y{{yzzzy{{{{{{{|{zz{z{yyzzz{|{{{zy{zzz{zz|{{{{{{{zzzz{{{{{z{{{{{{zzzzzzzz||{z{{{{z{zzzzzz|{{{{|{{z{z{zz{z{zz||{{{zyzz{y{|{{|{{{{{z{zz{{zz{z{z{{|{{yzzzzy{|{{{{{zzzzzzzzzzzz{{z{zzyxyyxwyy|{zz{yzz{yyyyyzyz{z{{|{zzyyyzzxzz{z{zzzzy{zzyzyzz{zzy{zzyzyxzyyzzy{{zz{yyyyzyzyzzzzyzzyzzzyzyyzzyzyy{yzzzyyzyzyzzyzzzz{yzyyzyyyzzzzzzz{yyyyxyyyzzzzzzz{{yzzyyyyz{z{yz{zzzzzzzzyyzzy{y{{zyyyzyzzzzzzzzzzzzzzyzyy{zzzzz{zyzzz{yyyzz{{{zzz{zzzzzz{yz{z{{zzzyzzzzzzzzz{z{{zzzzyz{zzzzzzzz{zzy{zzzyzz{zz{{{zyyyzzyyzyz{zz{{z{zzzzyyz{{zz{{{{zyzzzyzzyzz{{{|{zz{zzzz{z{{{{zzz{zzyzzzz||{z{{|{yz{{{{{zz|{zz{z{{yzzzzzzz}|{{{{{{y{{z{{{{{{{{{{z{{z{{{y{{|zz{|{|{{yz{{zz{{{{{{{{{{{{{z{{{{{{{{{{{z{{{z{zz{{|z{zz{z{zzzzz{z{zzzzyyzyz|yzzz{zzyzzzzzzyyyyyzzz{zz{{zzzyyzyyyzzyz{|{zyyzzyzxzz{zz{z{zzzzyzzzz{zzzzz{zzzx{zyzy{zzz|{{yyyzzyzyzz{zyzzzzzzyyzzyz{zzyyz{yzzzyyyyz{zzzyzzzzzyyyyzzzzz{z{{z{zyyzzyzz{zyz{zzzzzzyzzz{zyz{z{yyyyyzyzz{yzz{{{zzyyzzzyzzz|zy{zzzzzzyzzz{{zyzz{yzyyzyzz{{z{{z{zzzyzzzzz{zzzz|{zzzz{zz{zz{{{z|{zzy{zzyyyz{{z{z{zzzzzzzz{z{{zz{z{|zzzzzzz{{z{|{{{{{{z{{zz{z{{{{{|zzy{zz{yz{{{{{{z{yzzzyyz{{{{z{{z{{zzz{{{zz{{{{{{|{z{y{{z{|{{z{{|zz{{z{y{{{{{{|{{|zzz{zzz{z{{{z{{{zz{{z{|{{{||||{{zzy{z{{z{z{|||{{{zz{zz{zz{{|z{{zz{{|z{yz{{z{z{zzzyy{yyxzy{yyzzzyyzxyyyyzzzzzz{{yz{yzzzyzzzz{z{{{yyzzyyyyzzzzyzyyzzyzxyyyzz{z{z{zzzyyzzxz{zzy{zzzzyzyzyzzzzzyzzzzzzzzzyzzyyzzzz{yyzyxyzyzyzyyyzyzyzyyyxx{zzyzz{yyyzyyzxxzyzyz{{zyyzyzyzyyyzzz{zzzyzyzyzxy{zzyzzz{xyyzzxyzzz{zz{{zzyxyxzyy{zzyyz{zzyyzxzzyzz{zyz{yyyyyyyzz{z{zz{zzyzyzyzyz{zyz{z{yzzzzyyz{{{zzz{{zzzyyzyzz{{zz{zzzzyzzyzyy{zzz{{{zzxzyzz{{z{{y{{|zzzyzyyz{{zz|{|{{zzzzzy{{|zz{{||{z{zz{{zz{z{z{{{|zz{z{zxz|{{{{||{z{{zzyz{{{|{z{z{zzy{z{z{z{{{|{{{{zyzzz{{{z{{{{{{zzyzzyz{{{{{z{{{{yzyzzzz{{z{{zzzzzyyzyyz{z{{zyzyyyyyyzxzzzzzz{zyxyyyyzyzy{yzzyzyyyyyyyzzyzz|zzzzyzyyxzyzyz{zz{yyyyxyyzyzzzzzzzzzyzxyyyxzyzzzzzzyyyyzzyyyzz{z{yzzyyyyzzxy{zyzzyyzzyyyzyzzzzzyzyyyyyyyzyyzz{zyzzzzyyyyxyyy{zzyz{zyzzyyyyyxzyzzzz{yyyzxzyyyzyzzzzzyyzyzzyyzzzzyzzzzzyyyyyyzz{{zyz|zzzzyyyyyz{zz{{zyz{yzzyyy{z{{|{{zyyz{yzzzz{zzz{zzzyzz{zzz{{zzz{zzzyzzzzyzzzz{{z{{zzyyy{y{|{{z{{{z{yzz{{z{{z{z|{|zyzzzz{zzz{z{z{{zzzzzzz{||{z{{|z{zzy{z{z{z{z||{||zzzzzz{z}z{{{|{{zz{zz{z{{{{{{|{{zz{zz{z{z{zz{{|{{zzzyy{{{z{{||{zzz{zzzz{{{{{|z{{zyz{zyzz{{{{{{{zyzyzzzz{zzzzzzzzyzyyyzyz{zzzzzzyzyyxyzzyzyyzzz{yyzyzyxyzz|z{z{zzyyzyyzyy{yzzyzzyzzxyyzyzyzzzz{{zyzyyzyxzzy{zzzzzzzyyzyyyzzzy{y{yyyxyzyyzzzzzzzzzyyyyyzyzyyzyy{zzyyyyzyyzzz{zzzzzyzzyzyyzzz{{{zzyyyyyyzyxy{zyz{zzzyyyyyyyyzzzzzzyyzzzzxyzzzz{zy{zxzyyyyyy{{{{y{zzyzzyyyyzzz{z{{zyzzyzzzzzzzz{z{yyzzz{yyzzz{zz{{zzzzzzzzzy{{zzzzzzzzzzzzz{{z{zzzzyy{zyy{z{{{y{{z{{zzzyzzzz{||z{{zzzzzzy{z{{{z{z{z{zzz{zz{z|{{{{{{zz{zzz{z{{{y{{{{{{{zyy{z{|{{z|{z{z{yzzz{z{{{{{{{{zzy{{zz{{{|{{{{{zyz{zzz{{zz{{z{zy{z{zzzzzy{z|{z{z{{yzzyzzz{{|z{zzz{zzzz{{|zz|z{{zzzxyyyzy{zzz{|zzyyxzyzzzz{z{zzzzzyyyzyzz{{zz{{zzzzyxyzyzyy{z{zzzzyyxyyzyz{zzz{zzyyzzzyy{zzzzzyzyzyzzyzzzzzzy{{yzyzzyyyzzzyzzzzyzyyzyyy{zzzzzzzzyyzyyyyyzyz{zzzzzyyyyzyz{zzyz{zzyzyyyyyyzyzzzz|zzzzzzyzy{zyzzzzyzzzyyzzzzz{{yz{yyzzzyyzyy{zzzz{zzzzzx{y{z{{{{z{yzyzzzzzzzzyzzz{zzzzzzzyyz{zz{{zzy{yyzzyzz{{z{z{zzy{zzzz{{zzzz{z{zyzz{zz{zz{{{z{{zzzyz{zzz{{{z{{zzzzzzy{z{{{z{z{{yzz{z{z|z{{{{z{{{{{z{{z{{{{{{{zzzzzzzzz||{{{{{|zz{{zz{{{{z{{{z||zzz|{z{{|{zz|||{{{{z{z{|{{z{|z{{{z|zzz{z{{|z{{{{{zzz{z{{{z{z{|{zz{zzzzz{{{{{zyzzyyyyyyyy{zz{yz{yyxyyyzzzyzz{{zzzxyyyzzy{zzx{zz{yyyyyzzyyzzyyz{zzyyyyxzxyyzyzzz{zzyxyyzzyyzyy{zzzyyzyyxyzzzzz{zyyyyyyyyyzzzzzzyzyyyyyyyxzzyzyzzzzyyyyzxyzyzyzzzzyzzyyzyz{zyzzyz{zyzzyy{xyzzzyzzzzyzxzyzyzzyyy{zzzyzzyzyzzzy{z{{z{{yyyyzyzzyzzz{zzyzzyxyyzzzzzzz{z{zzyzzzyzz{{y{zzz{zzz{z{z{zzzz{zyzyzyyyzz{z{z{{zyyzzyzzz{yyzzz{zyzyzzyzzz|{{{{zyzyz{{z|z{{{zzz{{yzzyyyy||{zz{|{{zz{{zzz{{{z{{{{z{yy{z{z{z{{z{{{|z{{zz{{z{{{{{{{{{z{{zzz{{z{{|z{{zzyzzz{{zz{z{|{{z{yz{z{{{z|{{{z{{zzzzzzzz{{{{|zzzzz{yyzzzz{z{{{{zzzzy{z{{{z{zyzyzyxyyyxyzzzz{zzzyxzyyyzyz{zz{z{zzyyyyzyzyzzzz{y{zzyyzzyzzz{yz{z{yzxxzyyzzyyzzz{yyzyyyyxyzzzzz{yyyzyyxzxzyzyyzyzzyyzyyzx{yzzyzzzzyyxyzyzyzzzzzzyzyzyyyyyyyzyzyzzzyyyxzyyy{z{yyyzyyyzyyzyyzyyyzzyyyyxzzyzyzyzzzzzzyyzyyyz{zzzy{zyyyyyzxyxzzzyzz{{yz{yzyyyzzz{{yz{zzyyzyzyz{z{{yzzz{zzzyyy{{{{z{z{zz{zzyzzz|{{yz{{zzyyyzzzz{zz|{yzyzzzzzyyzz{|z{{{{zzzzyzyz{z{z{{{yzzzyzzzy{{{{||zzyyz{z{zz{{zzz{|zz{y{{{zz{{{{{{{z{zzz{z{z{z{z{{z{{y{zzyz|z{z{{{{{{zzzzzzzzz{{{{}{zzzzzz{{z{|{{{{zz{yzy{z{{||{{{|zzzzzzzz{z{{{{z{{z{zzyzzzzy{{yzzzyyyzzzyzz{yzzzzzyyzyyzy{zzzz{|{zzyyyyyyy{zzy{zzzyyyyzzy{yzzzz{{zzyzxyyyzzyzzyz{yyyyzyyyzyyyzz{yzyyyyyyzzzzzzzzzxzyyyyzy{zzzzz{{yyzzyzyzyzzzzzzzzyyyyzyyzyzzzzzzzxzyyyzyzz{zyzzzzyzzzyyy{zzzzzzzzzyyzzyyyyyzyzzzyzzzzzyy{zyzzz{{{{zzzyzyz{z{zzz{yzzzzz{zzzzy{zz{yz{yyzyzz{{z{z{zyzzzxy{zzz{{zzzzyzzyzzzzzzzz{z{zzyzyzzyzz{{{{zzz{zzzz{yzzzyzz{{zz{zzzz{y|zz{z{{|zz{zzyyz{{{z|{{{{z{z{zzzz{{z{z{{{yyzzz{{z|{{|{{||yzzz{{z{{{||{|{zyzzzzzzzz{|{{|{{zz{{zyz{z{z{{{{zz{{{z{z{|z{z{{|y{{zzzzzzz{{{{|zz{zzz{zz{{zzz{{{zyzzy{zz{{{{{z{zzyyyzyyyyzzzyyzyzz{yzyyzzzzzyz{{zyyyyyyz{z{z{{|{yyyyzzyzzzz{zz{{zzyyyzyyz|{{y{z{yzyzyxzyzzzzz{{z{yz{yzxyz{z{zzzzzzyyzzzxzzy{z{z{xyyzyzzyzzzzz{{yzzzzzzyzyyz{zz{zzzzyyzyzzzz{{z{zyzyyzzyzyz{zzz{zyzzyyzyzyzzzy{z{xyzzzzzyzzz{{z{{{yyzzyzzzzz{zz{zyzz{zyzzzz{zy{{{zyyzzz{yzz{zzz{{{{zzzzz{z|{z{{z{yzzzzzzz|{{z{z{z{zzyzzzz{{{{{zz{zzzz{zy{z|{{{{{{zzzyzzz{{z{{z{{{{zzzzzy{z|{{{{{|zzzzzy{{{|{{{||{{{zz{{zzzz{{{{{{{z{{y{zzz|||||{|z{zzzzz{{{{{{{||{zzz{zz{|{{z{|{{|z{y{{z{{{z|z{{{zz{y{{{z{{{z{{{{{zz{z{zyz|{{z{{{zz{zzyyz{{{z{{{zzxzzyyyyy{zyz{zyyyzyyyzyz{yzzz{{zzzyyy{y{z{zzzzz{yyyyzzyyzzzz{z{zyyxyzzyzzzzzzzz{yzyzyyyzzzyzzzzzyzyyyyz{zzyz{{zyyzyxxxzyzz{z{zzyzzzyyyzyz{z{z{zzyzyyyyzzz{zz{zzzzyyyyzyyz{zz{{{zyyyyyyzzz{zyzz{zzyzzyzzzzzy{{zzyyzzyzzyzz|{yz{z{zzyyzyzz{y|zz{{zy|zyzyzzzzz|{z{zyyzzzzz{{zzz{|{zz{yzzzyzz{z{{{zyyzzzzzy{zzzz{|{zzz{zzzy{{{zz{{z{zz{zzz{z{|{{zzzzyzzzzzzz|z{z{||z{yzzzzz{{{z{z{zzyy{zzz{{{{{{{{|zzzzyz{zzzyz{|{{{z{{zzz{z|{{{{||{yz{{z{zzz{{{{||{z{{{{zz{{{{{{{|{zzz{z{z{{{|z{}{zzzzzzzz{{|{z|z{{{z{zzzz{|{{|z|{{zzzzyzy{{|y|{|zyyyzyyzxyyyyz{z{xyzyzzzzyzzzz{z|zzyzzyzy{zz{{|zzzz{xzzyyzz{zyy{{zzzxyyyzyy{z{zy{zxzyyzyyy{yzzzzzzyzyzzyyy{z{zyzyzxzyxzyzyyzzzzzzzyzyyyyyyzzzzzyzzyxzyzxxyz{zy{zzzyyyzzxyz{yyy{{{zzyyyzyyyzzyyzzzzzzyzyyzxzyyz{{{yyzz{zzyzzzzzzz{zxyyyyzz{zzzy{z{yzzzzyzyzz{zzy{zyzzyyyyzzz{{{z{z{zzzzzzzzzzzz{z{yz{zyz{z{zzz{{{zzzzzzzz{{{{zy{|zzyzzzyzyyz{{z{{zyzzzzz{z{{{|z{{{{zzzzzyz{{{{z{{{{yzy|zzzz{{{{|z{{{{{z{{{z{zz{z|z{{zzz{{zz{{{}{{|{{zzzz{y{{{{{|{zzzz{{yy{z{{z{{|{z|z{|{z{z|{{z{{|{zzzzz{zz{zzz{{{{zz|{{zz{{z{{|{{{{{zyzzy{zz|zzyzyzyyzzyyzz{zzyzzzzzyxyxyzz{zzzz{zzzyxxyyzyzy{{zzyxyyyzyxzzz{z{zyzyzzzyzyzzzzzzz{zzzyyzyzyzyzyzzyyyyyyyyyzzzyyyz{yyyyxzzyzzzzyzzzyzyyyyyz{zzzzzzzyyyyyyyyy{zy{yxzyzyzyyzyyzyzzz{yzxyyyyyyzzyzzzzy{zyyzyzzyy{yz{yzzyyyyyyyyz{zzzzzyzzyzyzyzzzz{{zzyyyyyyyyzzz{zz{yzxzyyzyyzz{yzz{zzz{zzyz{yzzyz{zzzyzyzzyxz{z{z{{zyzzzzzyzyz{y{{{{|zzzzyzzz{zz{{zzzyyz{{z{zzz{{{|{yzzzzzyzz{{|z{{zzyzzzy{zzz{{z|{z{z{zy{z{{{{{{|{{{yzzyzzzz{z{z{{{{y{{z{zzz{|{z{z{zyzz{yyzz{zz{{{||z{{{zy{{z|z{y{{{z{zz{zzzz{{||{||{z{{zz{z{zz{{{zzy{z{{zzzzy|{z{zzyzyyzyyzzzzzzzz{yyz{zzyy{zz{z{{zzzzzzyyyyzyzz{zzzyyzyyyyzzzz{{{zzzzyzzyy{{y{{{{zyzyyyzyzz{zzz{zzyzzxzyyzz{|zzzzzzzyzyyzzzyzz{{{yzyzyzyyyzyzzzzzyzzyyyyz{z{y{{zzzyzyzzzyy{zzzz{zyzyyzyzzzzzyzzzyzyzyzyyyyzz{zzz{yyzzzzzzzz{zzzz{zyzzyyzzz{{zzzz{zyz{yyzzzzzzy{{{yyyzzzzyz{zzy{{zyz{yzy{zz{zz{{{{zz{zzzyzz{{zyzzzz{zzzzyz|{{{zzzzz{zzzzzz{{{{z|{|z{zzzy{zz{z{{{{{{z{zzzzz{{zz{z{{{yzzzzzzz{z{z|||zzzz{{zzzz{z{{{{|zyy{{zzz|{{{{{{{zzzzzz{{{{{{{z{zzyz{{z{zz{{z{}{{{{zzz{{{zz{{}||{{{z{z{zz|{{{||{{{yz{z{zzz{{z{{{{{{yz{{yzy{z{{y{yyzxyyzyzzzy{{{z{yyyzyzyzzzz{zzzzzyyzzyy{xyzz{{zzyzzyyyzzzzzy{z{zzzyyzyzzzzzzzzzzyyxyzzyz{yyzy{zzzzzy{yyxz{y{{zzyzyyzyyyzzy{zzz{yzyzzyzyz{zzzyzzyyy{yzyzzyzzyzz{yz{yyzyyzyzzzz{zzzyyyyzyyzzzzzyzyzyyzxzyyz{{yzz{zzzzyyyxzzzzz{{{zyyzyzzzz{zyzyzzyyzyzy{zz{{zz{{zyz{yz{yzz{z{zzzzyyzxzyzzzz{{z{zzyyzyzzzyyy{zzzzz{zzzzzzzy{{zzz{{zzzyzzzzzz|{{z|zyz|{zzzz{{{{z{{{zzzzzyzz{z{z{{{{{z|yyzz{{|{{{|{{{zzzz{zz{{z{||{|z{z{z{zzz{{{{|{{{zz{{{{{{{z{|{{z{y{zz{zz{z{z{{{|z{{{z{z{{{zz{||z{z{y{z{y{{{z{||{{zzz{zzz{{z|{z{{{z{yyy{{|{{{zzzzyzyyxyzxyz{zzzzyyzzzzyyzzz{zzzzz{zxyzzzxzzzyz{z{zyzyxyxzzyzyy{{z{yzyy{yxzzzzzz{{yzyyyyzxzzy{y{y{zyzzzyyyzzzzzzzzyzzyyyyzzyz{zz{zzzzyyyzxzzzyzzzzzzzyyzyzzyzzzzz{yzzyxyyzyyzzzzzzyyyyzyzyyzyyyzyzy{zyyy{zy{z{z{{zzyyzzzzz{z{{zz{zyzyyyyyyyzzzzzz{zzzzyyxyzzzzz{z{zzyyzyyy{{y{yz{{zyyzyyzzzzz{z{z{yzzzz{yz{|zz{z{{{zzz{zyz{{{zz{{{zzzyzzzzz{{z{{||yy{yz{yz{zz{z{||{zz{zzyzzzz{{{{{{zzzz{zz{|z{{{{{yz{z{z{{{z{z{{{{|{zzz{{z{|{{z{{{zzzzzz{{|z{{{{{{yzzzzzzz{{{z{{{|{zz{{zz{zz{{{{{{zz{zz{{z{zz{|z{{z{{{zzzzy{{zz{{|z{yzzzyzzyz{zyzzzyyxyyzyzyyzyzzzyyzzzyyyz{zzzz{zzzyyyyyy{zzzzyz{yyzzyzyyyzzzyz{{zyyzyyy{zzzyz{zzzyyyxzzyyzzyz{zyyyyyyzyz{{zzzzzzyyyyyyzzzzzyzzzzzzzyyyzzzzyzzzzzzyyzxxzyzzyzyzzzzzzzy{yyyzzzzzzzzzxyyyyyy{zzyzzzzyyyzyyyyzyzzzz{zzzzzzyzz{yzz{z{zyzzzyzyzyz{zzz{zyzzzyzz{yz{zz{zz{zyzyyyy{{z{{{zzzz{zyzz{z{{{{z{{z{zyyzz{zzzz{{{zzzzzy{zz{{{zzzzzzzzzyyzz{zzz{{zzzz{{y{{{{{|z{{{zzzzzyzy{{{y{{|{zzzzzz{yz|{{{z{{{zzzzzzz{{{z|{{{{{zzy{{{{|{{|{{||z{z{zzz{{{{{{{{{z{{z{z{zz{z{{{{{{{z{z{zzz{{{{{{z{{x{zzz{zz{{{{z{zyzyzyyy{{z{{{{zzzyzzzzzz{z{{yzzzzyzzzyyz{z{zzzyzyyyyzy{zy{z{zzzzyyzzyyzyyyzzzz{zyyzyzzzzzzyzzzzzyyxzyyzyzzzzyzyxyyzyyyyz{zz{{yzzzyxyyyzzzzyzyxzzzxyzyzzyz{zzzzzzyxzyxyyzzzzz{zzyzyyyyzyzzzyzzz{z{yyyyy{zzzzzyyyyzzyyzyyzzzz{zyzyyzyyzzyzyzzzzzzzzzzyzzz{{zzzzzzzyzyyyzz{{zzzz{zyzyyzzyzz{{z{z{yzyzyyzz{z{zy{zz{{zyyyzyzzzzz{{yzzzzzzzy{{yzzz|{zyzzzyyzz{|zz{z{zz{zzzzyzz{{{{{zz{zzzz{z{z{{{{{|zzzz{zyz{z{{z|{zzzz{y{zz{{{{z{{{zzzzzzzzz{{{|{{{{{zzz{zzz|zz{{{zzzzzzzzyz{{|{|{{{{{zzz{z{{zz{|{|{{z{{{{z{{{{|{{{zzzzzzzzz{|z{z{||zzzzzzz{|{z{{{z{{{zzzzz{z{{{{zzyzzyyzyyz{zzyzzzzzzyzyyyzzzzzz{zzyyyzzzyyzzzzzzzzzyyzyyzz{zzzyz{yyzxyyyxyzyyyzzzzyyyyzzxy{zyzzz|zzzyxyyyzyzzzzyyyzzzyyzyxzzzyzyzyxyyzyzzzzzzy{zyyyxyzyyzzzzzzzyyzzyzyxzyzzzzzy{{zyzyzyzyyyzzzyz|yzyyy{yzyyy{zzz{yyzxxyyxyzzz{z{zzyzzzyyyzzzzz{z{yzyyzyz{zzyz{zy{yyyyzyzzzz|yzz{zzzyxzyzzzz{z{zzz{{yz{zzyzzzzzzzz{zyz{yyzz{zzzz{zz{zzz{yyzzz{z{|{{zz{{z{z{zz{z{{|zzzzz{zzzz{z{{|zzyyzzzzz{||zz{z{{{z{z{z{z{{{{{|{z{zzzzzz{{{{{z{{{{{zzzyz{|zzz||{zyzzzz{z{{z{z{{|{zzz{{{{{{{|{||{{{zzzzzz{{{{{{||z{z{{zzzz|z{{{{{zzzzzzzz{{zzzzzzyyyyzyzyzzzzzzzzyyyyyxxxyzyyzz{zyyzyzyyyyzzyz{{{yzzxyyyyzzyyyyzzzzyxxzyyzz{z{zzzzzzzzzzzyyzzyzzzyy{yzyyyzzzyyzzzyzyyyyyyzyzz{zyzyyzyzyyyyzzyyzzzzyyzyyxyzzzz{yzyyyzyyyzyzzyzyz{zyzyyyzyyzyyyzzzz{{yyzyzyz{zzy{zzyxzzyyyyzzz{zzzyzzzz{yyzz{zz{{{yzzyyyy{yz{z{z{z|zzzyyzyzzzz{z{z{zzzzzzzyyz{{z{z{y{yyyzyzzzzzz{{{zyzzzyzz{{{zzzzz{zzyzzyzz{{{z{{z{yzzzy{y{{z{{|z{yz{{z{zyzz{zz{{z{yyz{zzz{{||zz{{zz{zz{{zzz{{z{{z|zzzz{y{z{{{{{{{{z{zzzy{|zzzz|{{{z{y{z{z{{{{{||{zzyz{zzz{{{|}{{{{{zzzzyz{zz{z{{zyzzzzz{y{{{{{z||z{{zzz{z{z{|zzzzyzzzzyxz{yzzy{zzzyzzzxzyzz|z{zz{zyyyzyyyzy{zy{zzyxyyyyxx{z{zzz{zzzzyzyyyzzz{zzzzyyxyyyyyyzzzy{{yzzzyzyzyyz|yyyzzzzzyyzzzzy{zzz{{yyzyzzzyz{yz{yz{zyxyxzxzzyz{{{{zz{zyzyyyzz{zzzz{{zyyzyzyzzyzzyz{y{zyzzxyzzy{z{zz{zzyz{yzyzzzyzz{zzyzzyzy{z{zyzz{zzzyzzyzzzzzy{|zyyzyyzyyzz{zy{zzzz{zzyz{z{zyz{{zzzz{zzzz{y{z{{{{zzzzzzzzz{{z{|z{{z{zzyzzz{{{||z{{yzyyz{z|{z{{{|{{{zzzzxz{z{{{{{y{yzzzzyy{{z{z|{{zz|zz{{z{|{{|{{{{z{z{{{{z||{|z{||{{{zz{z{{{|{{{|{yz|{zz{{{{|zz{{|zzz{z|z{{z{{{|{zzzzzz{z{{{{{|{{zzz{zzzyzzz{{{{zzz|zyz{y{{z|{{z{zyyyyzyxxyz{y{{{zzyyyzyyyzz{z{y{zzyyz{yyzzyzzz{yyzzyzzyy{{zz{zzzyyzyyzyyzzzzzzzzyyzyyzzyz|zzy{zyzyzyyyyyzzzzz{z{zzxyyzyy{zzzyzzzyyyyzyzzyzzzzzzyzyyyyyyxzzzzzzzzyzz{xyyyyzzzzz{zzyyxzyyyyzzzzzzzy{yyzzyyz{yzzz|zzzyzzzzyy{yzzzz{yzzzzyyzzzzzz{{{z{zyyzzzzyz{zzz{zyzzy{zy{z{{{z{zzzzzzyzzzz{{zz{zzyzyzzzz{{{yz{zy{xyzzzzy{{z{z{zzzyyzzz{zz{{z{{z{zzz{{z{y{{{{z{{|yz{zzzyy{{{{{{z{zzzzyyzy{{{z{{|{zzzzz{z{z{{{{z{{{zzzy{zzz|{{{|{{{zy{zzzzzz{{{|{{zyzz{zzz{{{z{|{|{{zzzz{z{|{{{{|{{z{yy{{|z{{|z{{{{{{yzzyzz|z{{zz|{{zzyzzz{z{zzyyyzyyxyxzxyz{zzzzzzyxyzxyyyzzzy{{{{zzyyzxz{zz{{zzzyyyzzyyzyzzzzz{zyzyxyy{y{yzzyzzzyyzxzzzzyzyyz{zyzzzyyzyyyzzyzzzzxyzyyyyyzyzzz{y{yyyxzxzxyz{zyyyyyzyyyzxzzzy{zy{zyxzyyyzyzzzyzzzzyyyyyxyyyzyzzzyzzyyyyxzzyzzy{{{{zzyyzyzzzzyzyz{{zyyzzyyy{{zz{zz{zzyyyzzzzzyzz{z{yzzzzyzyzzzz{z{{zzzzyyzzzz{{z{z{zzzyzzzyzz{z{{{zzyz{{zxyz{zzz{{z{zyzzzzyz{{{z|{{y{zyzzzy{{z{zz|{zzzz{zzz{zz{zz{zzyzzzzzy{|{{z{{{{zzzz{{{{{{zy{{|{zyz{zzzz|{z{|{{zzz{zzzz{{|{{{z{{zzzz{zzzzzz{{{|{zzz{zz{zz{zz||{zyzz{{yzz{{z{|{|{zz{{yzzz{z{{z{{{yz{zzyzzz{zzzyzyyxxxyyyyzzzy{zzzzyzxzzyyzzxzzzzzzyzyyzyzzyzzz{zzyyyyxyzzz{yzy{yyyzxxyxyy{zzzzy{yyzyyzyyyzy{y{zzzz{yzzxyzy{zzz{zyyyyzyyz{zzyzyzzyyyyyyyzyzzzz{zyyyzzy{xzy{zyzzy{zxzzxyyyxzzzyzz{zyyzyxyyyzy{yzz{yzyyzxyxz{yyzzzzyyyyzzxyz{z{zzzzyyyyzyzyyz{zzzzzzzz{yyyzzy{{yz{{yyyyyyyzyy{zzz{{zzzzzy{y{z{zyzz{{yzzzyyy{zzzz{zzzz{zyzyzz{z{{{zzyzzzyyzz{{zzz{{{zzzz{zzz{zz{{{z{zzzzyzyxzz{{{z{{{yzyzzyz{zz{z{{{z{{z{z{zzzz|z{{{zzzzz{zzz{{{{{zz{zz{zzzzz{|{z{|{{zz{{zz{{zyz{{||z{yz{zz{{{|{}{{{{zzzz{zy{{{z{{{{{zyy{y{zz|{y{{|zzzzyz{yy{zz{z{yzyzzzyyyyzzzzzz{{zzyzyyyyzzzzz{z{{yxyxzzyzyzzyzz{zzyyzyyzy{zyzyzzzyyyyyyyzyyzzyyzyyyyzzyyyzyyyzzzzzyyyzyxz{z{yyzzzyzyyzzxyyz{zz{{xyzyyzyyyz{zyzzzyyyyzzyyyyzzzz{zzyzyxyyyyzyzzz{zzyyyzyywyzyzyz{zxzzyyyzyyzzzyyzzyzzzyyzyzz{zyzzzzzyyzzzz{{yzzz{zyyzzyyzzzzzzzzzzyyzyyyzyz{z{{{|zyzyyzzyyy{zz{{zzzzzzzyzzzz{z{{{zzzy{zy{zzz{zyzzzzyzzyzzzz{{|{{zzy{zzyzz{zyz{{zzzzzzzyzyzz{{z{{{yzyz{zyzy|zzz{{{zyz{zz{{{z{zz{{z|{{zzz{zzz|{{zzz{{z{yy{yz{{{{z|{{zyz{{yz{{y{{z{{|{zzz{z{{{z|z{|z{{{{zyz{{z{zz{{|z{yz{y{zzz{zz{z{{z{yzzzyzzz{{{yzzyyyyyyyyz{zyyzzzyzzyzxxyzzzy{z{{zzyyyyyyzy{yy{{zyyyyyyyyzzzyyz{{yzyyyyyyzyzzzzzzzxzyyzyyzzzzzz{zzzyxyzyyyzzzzyzzzzzyyyyzyzyzyzzzyyyyyzzxz{zzzzzzzzyyxyyyyyzz{zyyyzzyxyyyzzyyzzzzzzyyzyyyzzzzz{{yzyyyyyyyyzz{y{z{zyyyzyyyzzzzzyzz{yzxyyzzz{zzzzz{zzzzzyzyz{zzzzzzzyzyyzxzz{{{z{zzzyyzyyyxzz{yzzzz{zzyzzyzzy{{zz{yzzzzzyyzzzz{zzzzzzzyzzyzzzzz{z{zyzzzy{zz{zy{zz{{z{zzzzxzz{{{{{z{{zzzzyzz{{{{{{{{{zyzz{z{|{{{{{|z{z{zy{zz{{{{|{{{{y{{z{yz{{{{{||z{zzz{zzz{{{|{||{{{yzzz{{z{{|{{z{{{zyz{{{zz{{{{{{{{zzzzzyy{{{{{{z{z{zzzyzzz{z{zzzzyzyyyyyz|{zzzz{z{{zyyyzyyyz{zz{yzxyyzzyyyyzzzzyzzzyzzxzzy{zzz{zzzxzyyzyzzzzzzzzyyzyyyyyyzyzzy{zzyyyzzyyzyzzzx{zzzyzyyyzzzyzyzz{yyyyyyyzzzzzy{zzyzyyyyzzzz{{yz{{zyyyyzyzzz{zzzzzzyyzyyyzyzzz{zz{yyyzyyzyyzy{zzz{zyzzzyzyzyyzzzz{zzzz{yz{y{{zz{{{yyzyyzzzzzzzzyzyzzyzzyz{{{{{zzy{z{zzyyyyzzzyz{zz{zyyzyyz{{{{{zzzzyzyyy{yz{{{y{|zzyzzzx{z{{{{{{{{z{zxzzz{z{{{y|{{{zz{zxzz{{z{|{{{zz{{zzzz{|zz{z{{{zz{zzzz{{{{}{{{zzzyz{z{z|{{{||{{z{zzzzz{{{zz|{{zz{{z{z{{{z{{{{|{{z{zzzz{y{z{{{|yz{yz{zzz{{|{|{z|zzzzzyzz|z{z{{{zyzzzzzz{{{zzzzyyzyzyyyxzzzxzzzzzyyyyyzzz{y{zzz{zyzzyyzyyzyzzzz{zyyzyyzzyzzyyyz{{zyxyyyyyzzz{zy{zyyyzyyyzyyzzz|{zyzzyzyyxzz{zyz{yyxyyyyyzyz{zzzzzzyyyyyyy{zyxy{zzyzyyyxzzyzy{zzzzzzzyyyzy{y{{zzzzyyyyyyyzzyyxz{{zzzzyxzyyzzzy{zzzyzzyzyzzzyzyz{zzzzyzyzy{zyzzz{zzzzzzzzyzz{{yz{zzzzzxyyyyzzzz{zz{zzzzzzyyzz{z{{zyzyyzzzz{zzz{z{{{zyzzzzy{z{yzzy|yyy{zz{zzzz{|z{zzzzxzyz{{zzzz{{{{yz{zzzz{z{{|{{zz{zzzzzy|{z{{{|{zzz{zz{{zzy|{|{{|zyzzz{yy|{{{{||zz{zzyzy{{{{{|{{{zz{zzz{{{|{{z{||zzy{zz{{{z{|{{|{{zyz{{yzyz{z{|zzzz{zzzz{{{{zz|zzzyzzzzx{{z{zyzzyxyyyyyzyzzyyzyzyyzyzxzyzzyzz{zzyyzxzyyxzzyz{{zzyyzyyyyyzzzzzzzzyyzyyxyyyxyyzzzzzyyyzyzx{yzyzzzzzyyyyyyyyy{yz{zyyzxzxxyzzyzyyzzzxyyyyyyzzzzzzzzzyyyxyzyyyyzzzyyzzyyzxyyyyyz{zyzzyxxyyxyyyzyzzz{zyyzyyzyyxzzzy{zzyyyxyyxyzyzyzz{zzz{yyzzzyyzzyzz{zzyyyyzzzzzyzz{{yyzzyyyyyzyzyyzyyxyxxyzzzyzzzz{zzy{yzyyxzz{zy{|zzyxzzzy{zzyzyy{{zzzzyz{yyzzzyzzzzzzyzz{yzzz{z{|z{zzzzzyy{z{z{{z{zzz{zyzyz{{z{z{{zzy{zzzz{{z{{{{|{z{{{{zzz{{{z{{{zzzzzzzzzz{zz{z{{yzzzyzz{{{z{{{{{yz{yyzy{{{z{{z{zzzzzyzzz{{{z{{zz{{zzyzzzzz{z{zzzzzy{zzy{{{{zy{zzyyyzyyyyzzyzzzyyzyyyyyzz{{zzzzzz{yyyyzxz{zzyz{zyyyzyyyxyzzzzy{zyzyxyzyzzz{yzzz{zyzzyyxyyzzyzy{zzzyzxxyzzyyzyz{zyzyzyzxyyyyyzz{zyzyzyyyyzz{zzz{z{yxyzyyyyzzzz{z{yyy{yyyx{y{yzz{zyzzzxzyyzzzyzzzyzzzyyyxyzzyzy{zzzyzzyzzyzyzzzzzyzxyyyyyzzzzzzzz{zzyzyzzyzz{z{zz{zzyyyyzyzzzzz{|{zzzzzzzyzz{zz{{zzzzyyxzzyzz{zz{zzzz{zzyz{{{zz{{zzzzyzzyzz{z{{{{{zz{yyyzyz{zz{{z{z{yzzyyyy{zz{z{{zyzx{yz{{|{{{{{|z{zz{zzzz{{{{|{{|z{zz{yzz|{{{|z{z{zzz{z{|{{{z{{{{yzzz{zz{{{z{{{zz{z{{zz{|{z{z{{{|{yyzzzy{z{zz{{zzz{zyzzzz{{z{{zzzzzyzyzzz{{zzzyyyyzyyyyyy{{yyz{{yyyyyyzyzy{zz{z{zyxzyzzyzz{zzzzzzyyzyyyzzyz{zz{{zzzyyzyyyzz{zzzyzzzyzyzzyzyyzz{y{yzyyyyyyz{zyzzzzzyzyyyyyyyzy{y{yzyyzyzzzzzzzzzzzzyzyzyzzyzzzy{zzyzzxzyyzyzzzz{zzzyyyyyyyzzyz{z{y{yyyyyzy{zzy{zzzyyzzzyyzz{zzzzzzzzyzyzyzzzz{z{zyzzzyzzy{zzzz|z{xyzyyyzzz{z{z{zyzzzzzzzzz{zy{{z{{zzzyyzz{z{{{z{yzzzzyxzzzzzzz{{{z{zz{zy{zzz|z{{{zzyzzz{zzz{{{{{{zzzzzyyzzz{z{{{{{zz{zzz{{{|{{z|{{z{z{zzz{{z{|{{{{zzyz{{{z{{{z{|z|zzzzzz{zz|{{|{{|zy{zz{z{zz{{{{{|{{z{{{{|{{|{z{{{{yzzzz{z{z|{||{z{{zzzzz{{{{z{|zzz{yyy{yz{z{z{zyzyzyyyyyyy{y{y{zyyzzyyzyzyzz{z{{yzyxyyzzzzz{zz{zzyzzzyzyyy|zzzzz{zyyzyzzzyzzz|z{zyzyyyyyyzzyz{zzyyzxyyyyyzz{zzz{zyzzzyyyzzyzyy{zyzzxxyyzzy{yyyz{zyzyxyyzyzzz{zz{zzzzyyzxz{z{yz{zyyzyzyyyyzyzzzz{yyyzyzyyzzz{zz{{zzzzzzyyzzyzz{{|z{zyzyzzzzzzyz{zzzyzyyyzz{z{{zz{yzzyyzz{z{zz{z{zyyzyzyzz{zz{z{zzzz{zyyyy{{z{y{zzzzzz{zzz{{{zy{z{zyyz{zz{y{{z{|{{y{zzyz{{{{|zy|{|{zzzzz{y{{{{z{{{zzz{{zzz{{|{z{{|{zzzzz{{y{|{{{z|zz{{y{zzz|||{{{{{{|{zzzz{|{zy{|{{zzzz{z{zz{z{{|{|{{{z{{{|{|{{{||{{{y|zzz{{{{|z{z{z{zzzzz{z|z{|{{{yz{zyzzz{{z{{zzzyxzyyyyyzzyz{{zyzyyyzyyyzz{zzzzyyyyyyzyzzyzyyzzyxyyyyzyzzy{yzzzxzyyyxyxyzzzz{z{yyyyyyzxyyzzzzzzzzzyyxyyyyzyyyzzyzyyyyzyyzzzyzzzyyyyxyxxzzzyyzzyzyzyyyxyxy{zzzyzzyyyyyyyyyy{z{zzzyyyyyzyyzyyyyzzyzyzxyyxyyzyyzzyzyyzyzyxzz{zzz{zyyyzyxzyzzz{zz{zzyzzyyzzzzzzzyz{yzyyyyyyzyzzzz{{zzyzzyzyy{zyz|z{zyyyyyyz{zzzzz{{yzzzy{yx{{yz{{{zzzzzzzzyzzz{{{{{yy{zzyzzz{{|zzz{{yzzyzzyzz{{{z{z{yzzzzzy{{zz{zz{{z{zyz{zz{{z{z{||zzzzz{zz|zz{{{{zy{{zzz{{{zzy{|{zzyz{zz{zyz{z|z{{z{zzzzzzz{{|y{{z{zzzzzzz|z{z|z|{z{zzz{zz{{{{{zzzzzzzzzzz{z{zyzzyxyyxyyxyyzzzzzyzyzzxyzyzzzzyz|{zyxyyzyz{zyzzz{zzyzzyzyyyzzzyz{{zyyyyzyxzzzyyzz|yzxxzyyxzzyyz{zzzyyyyxyxy{zzzzzzyyyz{zyzzyyzzzzzzyyzxyyyyzzzzyzzzyyyyyxyzyzyzzz{zzyzyyyxzzyzzzzyyyyyxyxyyzyyzzzzyyyyyyzyyzzzyz{zyyzz{zyzzzzyyzzzzzyyyyyyz{zzyzz|zyzzzzzzzzzz{zz{yzzy{zyzzyz{z{{zz{{zzzyzz{zz{{z{{z{zyyzzz{{{z|{zzzy{zyyyzzzyzzz{z{zzzyzyz{{{yz{{{zzzzzy{{{zzz{{{zzzzzzyzzz|z{zz{zy{zzzzz{||{{{{zzz{yyzzzzz{{{z{z{yzzz{z{{|z{zz{{{zz{zzzz|{{{z{zzzyzyzzzz{z{z{{|{|yz{{zz{zz{{{{z{zzzz{{zz{{{{{{{{zzzz{zzz{zz{z{{|zz{zyyyzz{{{zzz{zzzyzyyxzzz{zzzzzyyzyyyzz{zzzyzzzzzyyzyy{yzzz{zzzyyyyyzzy{zzyz{{{zyyyyzyzzzzyz{{zyzzyzzyzzzyy{zzzzzzzzyyyzzzzzzz{yyyyyzy{yzzzzy{yyzyzyyyzzz{y{zzzzzyyyyyzyzyzzz{zyzzyyyyz{y{z{zzzzyzzzyzyzzyy{y{zyyzzy{zzzyzzzz{zzzzyzyyzyz{zz{{yyzzyyyzz{z{{|{|zzyyyyzxzzz{z{z{yzzzzzyzz{z{{y{zzyzzz{zzzzzzz{zzzyzzyyzzzz{zz{{yzyzzzzzzz{zzzz{{{zz{yzyz{zz{z|{{y{zzz{z{z|z{{{z|z{zzzzzzz{{z{{{{{zz{zzzzzz{{{z{}z{zzy{{{{z{z|{{{zzz{z{zzz}{{{{z{{zzzzz{{|{z{z{{|{zz{zzzzzz{{{||{|{{z{{z{{{{|{{||{{zyyzzzz|{{z{{{z{{{{{z{z{|{{{{{zy{yzzzz{{{z{zzyyyxzzyyyyyy{z{{zyyyzyyyyzyyzzz|zzxyyyyzyz{z{zzzzyzzyzxyyzz{yyzzzzyyyyzxxzzzzyzyzyyyxyyzyzzzzyzzyyyyzyyzyy{zyz{zzyxzyyzy{yzzyy{yzyyyyyyzyyyzyzz{yyyyzyyyzyzzzzzzzyyzywyxyyzyzzz{zyzyzzzyxyyzzyzzzzzyyzyyxyzyzzzyzzyyyz{zyyzyzyz{y{yyzyxxzyzz{zz{{yyzzyyzzzyz{{zz{xxzyyyyzyz{zzz{{yzzyzyzxyzyzzzzzzzzzzyzyzzzzyz{zyyzyzyyzy{zzy|{{z{zzzzz{zzz{{{zzz{zz{yzyz{{{zz{{zyz|zzyyzz{{zy{z|zzz{{zzz{{{{|{{zzzzzzzz{z{{z{z{zz{zzzzyz{{{{zz|z{{{z{zz{zz{{{zz|zzzzz{|{{z{{{{{|{zz{zy{{{z{zz|{z{zyzzzzz{z{{{|y|zy{zzzz{zz{{{|{zz{zyz{zzzz{yzyyyyxyyzxyzyyzzzyzyzyxyxyyzyyzzzzzzyyyzyyyzyzyzzzz{yyyzzyyzzzzzzyzzzyyxzzxzyzzzzy{zxzzyyzyyyzyy{zzyyyxyyzyyzzxyzzzyyyyzzxyyzzyzyzzzyyyzyyyy{zxzyyz{yyyyxxyyyzz{zzzyxyyxzyyyzzzyzzzzyzyzxzyyyzyy{{zzyyyzxyyzyzzyzyyyyyzzzzyzzy{zzzzyyyyzyyy{z{zz{{zyzzyyzzzzyzyzzyzyyyyyyyyzzzyzz{zzy{xzyyyxzzzyzzyzzzzyzyyz{zy{{{{zyzxyzzz{{{zz{{z|zzyzyz{zzz{zz{zyyzzzzzz{zz{zz{{yzyzyzxyz{{z{{zz{yzzyzzzzz{{z{{{zyz{zzz{y|z|z{y{|zzyzz{y{{{{{{{{{z|zz{y{z{z{z|zz{zyzz{yzzzz{z{{zzzzzzzzz{z{{{{{zzyyzzzzyz{z{z{{|{zzzyzyzz|z{zz{{zzzzzzyyzz{zzyzzzyyyyyyyzyzzzzzzzyzzyxyyzyzzzz{yzzyyyzyyz{zz{z{{yzyzzzzy{zzzyz{zzyzyyzyzzyzzz{z{zyyzyzyzzyyzyzzyzyzyyyyyyzzyzy{zyyyyxyxzzzzzyzzzyxyyzyzxzyzzzzzzyyzzyyyyzy{zzz{{zyyyyzyyzzzzzz{zzzzyzzzyyy{yzyzzzzzyyxzyy{zyzzyzyyyyyzzzzyzzyz{zzzyxyyyzzzzz{{z{{yyyyx{zzzzzzzzzyyyzyyyyzz{zzzzzzzzyzzzzzz|{{zzzzyzyzyzz{z|zzz{z{zzyyzyzyzz{zzy{zzzzzzzzz{{{|zz{zzzyzyzy{zz|z{|{zzzzzyxyz{{zzzz{zzzz{{zz{z{{{z{zz{{zy{zz{{z{{{{z{zz{z{zzz{{{{{|z{yzzzz{zz{z|yz{{{zzzzzzzy{zzz{{{zzzz{zy{{{|{{z|{{{yzzzzzz{{{{{{z{zzzzzzz{{{{z{{zyzyzyyzyz{z{zzzyzzyxzxzyzzzyzzz{zzzzyyyyyz{z{xzzzzzyyzzyyy{yzzzyyyzyzzzzyzzzzy{{zyxxyyyyyzyzzzz{zzyyyyyxyz{z{zz{{yyzyzyzzz{yyzzzyyyyyyyzzy{zyzzzyyyyyyyyzyyzzzzzyyzxzyyxzzzzzzzzzyzyyzyyzzzzzyzzzyzyzyxzzyyyzzzzzyzyyyzxyzyzyzyzzyyyyzyzzzz{{yz{zzzxzyzzzzzyzz{{yyzyyxzyzzzzyy{zzyyzzzy{zz{yyzz{zzzzzyzyzzzz{{z{zzyzzyzyzz{zyz{zzyyyyzzyzzyzzz{z{{z{{zyzz{z{{{{{z{zzzzzzz{y{{{{{yzzy{yz{{{y|{{zzzzz{z{zzz{{{{{{{{zzzzz{z{{zz{{{{zzzzzzzyzz{{{z{{zzzzzyzz{{{{{{{{zzz{{zz{z{zz{{||zzzzzyz{{{z{{{{|z{zy{zzzzzyzz{{{zz{{zzzzzz|{{{|{z{yyyzzzzz{{zzzzyyyxyyzyyzzxyyyzyyyzxyxyzzzz{zzzyyyyyzyyzzzzzyy{zyzyyzyyyzzz{z{{yzyyxyxxzyzz{yyzzyzyzyyxzzzyzzy{y{yyyyyzyzzzy{zzyyyzyzyyzyyzyyzzyyyyyyyxxyyzyzzyyyxxzyzzzyzz{zyzyyxyyyxzyzzyyy{{yyzyyyyyxyyxz{zzxzzzyyzyxzzyyzyzyyyxyzzyzyzzzzz{zzyyzyzyzzyzzz{{yzyyzxzyzz{yzz{zzyzzyyzxzzz{y{|z{zz{zxyzy{{zzz{zyyzzyyzxzzz{z|{{zxzzyzzzz{zzz{zyyy{yyzyzzz|{{{{zzzzyzyzz{zzz{z{zyzzzz{zz{{{zzz{{{yzzxzzy{{{{{zz{{zzyzzzzz{z|zzzz{zzyzz{zz|z|z{{|{yzzzy{zz{{{{{{{zzzzzzzzz{{{{{z{{{z{{yzzzzz{z{{{zzzy{zzz{z{{{z|{{zzzzzz{z||zz|{z{zyyyzzzz{zzzzzyyyyxyyyxy{zyyyzzzzzyyyyxy{zyzz{zyyxyyzyyyzyz{y{zyyyyyyyyyyzzzyzzxzyxyyzyzzzzzzz{yy{yzzyzyzzyzyzzzyyyyyyyyyzyzzzyxyzzyyxyyzyyyyyzzzyyzxyxyz{yzzzzzyyyxyx{yzzzzzzzyyzzyyyyxzzzyzzyyyzzyyyxxzzyzzzyzyxyzyzyyyyyy{zzzyzzyyyyzyyzzzzzyxyxzyxyyyyzzyz{zyyyyxyzyzzyy{zzzxzzyyzzyyzy{zzzzzzzzyzxyzz{z{z{zxzyyzzy|{{{y{{zzzzzzzyz{zzzz{z{zzzzzyzz{zz{zz{zzyzzz{zz{zyz{{z{zzyzzyyyz{z{{zzz{yzyyxzz{{zzz{|{yzzzy{zzz{zz|{z{{zzzzzz{z{{{{{z|{zzzzyzz{|{{z{{zzyzzzzyyz{{|{{{{{zz{{zz{{{zz{{{|zzyyzyzzzz{zz{{{zzz{yzzzzz{{yz{{zzzyzzzz{{zzzzzzzyyyyyyxzz{zzz{zzyyyyyyzzz{zz{z{zzzxyzyyzyzzzz{zzxzyyyyzzyzzz{z{zxzyyyyyzzzzzzzzzyyyzyyyz{yzzyzyzyyyxyxyz{zyzzzzxzzyzyzy{zzyzz{zyyyyxyyyyzzzyzzzxxyyzzxyzzz{zzzyyxyzzzyyzzzy{{zzzyzxyyyzy{yzzzzzzzyyyyyyyzyyzzzzyzyyyzyxz{z{zz{zz{zyyyyxyz{zyzy{yxyyzyzzzzyzzzzzzxzyzyzzzzzzzz{{zzyyzyyyzz{z{{{zzzzzzyzyzzzzzz{yyzzyzzzzz{zzzzzzzzzzzzzyzz{{{{{{zzzyzyzy{{z{{{{{{z{zzyyyy{{zzzzz{zzy{zzz{z{{z{z{{z{x{z{zyzz{{{zzyyzzz{{z{||{|z|{{{{{zzz{z{{z{{z{zzyzyzz|z{z{|{{{zyy{zzyz{{{|z{{|zzzzzyzzy{|zz||{{yzz{zzyyz{{{yz{zz{zzyyzzz{z{{yzyyzyyyyyyyzyyyz{zzzyzxyyyzzz{yzzxzyzyyzyyzzz{z{zzyyzzyyxzzzzzz{{yzzyyyzxzz{zzzyzzyyyyyxyzzzzxzzzyyzyyyxzzz{yzzzzzzyzyzyyzzy{zzzzzyyzyyyzzzyzyyzzzyyyyzxyzzzz{zzzzyyyyyyyyzzzzzzyyzzzzzzy{zyyyzzzyyzyyxyzy{zzzz{zyzzzzzyyzzzzz{z|zzyyyxzy{{{{zzz|zyzzzyzz{{{zz{z{yzyzyzyzzzzzz|z{{zyyzyzzzzzzz{zzyyzyzxzz{z{zzz{zzzyzzzzzzz{zzyzzyzzzzyyyzz{{|{|zzzzyzzzz{{z{{{{zzz{{zzz{{{zz{{{z{{{{zz{{{{{|{{{{{z{zzz{z{z|z|zz{{yyzy{{{{{zzz{|{{zzz{zzz{{{{z{|{{z{{{{zz{{{{|{{{{{z{{zyzz{{{{|{{{zzz{yyzz{{{{z|{{{{zz{zzz{{zz|z{{yzzzyzy{{zzz{zzzyxzyyyxyzzzyzz{yyyyyxyzyyzz{yzyzyxyzyyxyzzzy{zz{zyzxyyyzzz{zy{{{yzxyzzyzy{zyz{zyyyyyyyyyyzy{zzzzyyxyzyyzzzyy{zyzzyxzyyyzzyzyz{zzyzyzxyyyzzz{yzzyxyyyyzzyyz{zzz{zzzyzyyyzzzyzzzzzzzzyyyzzzzzzy{zzxyyzyyzzzzxzz{zyzzzyzyyyyz{{z{zyzzyzyzyzzyyzzzzzzzyzyzz{zz{zzzzzzyzzyyz{{{zzz{{{zyyzyzzzz{|zz|zz{yyzyzyz{{zzz{zzzzzzzyz{yzz{zz{{zyzzzzy{zz{zz{zzzzyz{zy{{z{z{{|zyzzzyzz{{{{{z{{{zyzzyzz{zz{{zz{{zzzzz{z{zzz{|z{{yzzzyzzz|{z{{{|{{{zzz{{zz{{z{z{{zzyzzzzzzzz{z{|{z{{{zzz{{z{{{{{zz{{zzz{z{{{z{{{zzzzzz{yz{zz{{{{{{zyzyzz{zz{zzzzxzyyzzzyyz{zzyz{yxyyxzyyyyyzz{zzyyyyyzzzzyzzz{{zyzyyzyyyzzzyyz{yzyyyyyyxzyyyyyzzyyyyzyyyzzzxyz{yyyzyyzzyyyyyyzzzyyyzyyyzzz{yzzz{xzyyzyzxxzzzzzyzyyzzyzyzyzzyz{zzzzxyyyxzyyyzz{zz{yyyyyyxzyzyz{zyzyyxyxyyyzyzzzzzzxyyzyxyyzzzz{zzzzzzyyyzz{zzyzy{{yzzzzyxyzzzyyzzyzzyzyzyzz{zz{z{zxzz{zzyy{zyz{z{yzzxzzzyzy{zz{{zzzzzzyyyz{{zyz{zzzzy{zzz{{zzzz{zzyzz{yzzzzz{z{|{{zzzyyyyz{y{{{{{{yzyzyyz{z{z{z{{zy{yz{zzz|z{|z|{{yzzz{zzy{{zz{zzzzzzyzzz{zz{{{zzzzzzyzzz{{{{{{{{z{zz{zz{{{{{z|{{z{z{zzz{z{{{{{{{|zzyy{{z{{{{z{{zzz{zzzzzz{z{{yzzyyzzxzyxy{zzyyy{zzyzyxzyzxzy{z{z{yyzz{zyzzzyy{zzzyzyzyxzz{{{zzz|zyyyyyyxzzzyzzzzyyyyyyyyyzyyzz{{zyzzxyyy{zyzzz{zyyzyzzxyzzzzzzy{xxxyyxzyyzyzzzzyzxyzyzyyyy{y{zzzyyyzyzyyyzzzzzzzyyxyyzzyyyyyzzzzzyyxyyzyy{yzzzzzzyyyzzyyzyyyz|{{{yyyyzzyzzyzzyz{yzy{yyy{{zyyzzz{zzzzzyzyzz{yyz{zzy{yzyzyzyzz{z{z{zzzz{zzzzzyzzz{yy|yzzzxz{{zzzzzzzzzzyy{{zz{{{zzyyxzzzyzz{z{z{{{{yz{zyyz{{{{z{{{{zzzyzzz{{{{z{{z{yzz{zzz{{{z|{{z{zz{{zzzz|{|yz||zzzzyzzz|zzz{|z{{zyzzyzz{|{{{{|{{zzzzzzz{{{z{z||z{{{{x{z{{z{{{||zzzzzz{y{{{|z{|{zyyxzz{y{{{{{zzyxyyyyxxyyyzzy{zzzyyyzxyxzzzyzz{zyyyy{yzyyzzz{zzzyyzyyyyzzzzz{z{zzyzyxzyxzzzzy{y{zyyyzxyyyzzzzzzzyyyyzyyyyzzzzyzzxxyyzzyyzzyyyzzzzyyyyyyyzzyzyzzzyyyzzyyyzyzzz{z{yzzzxyxyy{zzzzzzyyyyyyzyzzzzzz{zyy{xyyzyyyzzz{z{yyyzy{zzzyzzzzz{yyyzyyyyzz{zyzz{zzzzyzzzz{yzy{zzz{zyzyyzzy{{z{zzzz{zxzzyz{zzzzzzyyzzzzyy{{{zzzzz{zzzzyzzz{zzzz{z{yzz{zzy{{{z{{{{zzy{zz{zz{zz{z{{zzzzzzyyz{{z{{{{{zz{zzzzz{{{{||{zyzy{zzzzzzzz{{{zz{zz{zzz|{z{{|{z{zzyzz{{z{zz{{{{zzzzzzz{{{{zz{{z{zzyzzz{{z|z{{{|zzzzzzz{{{zz{{{zzzzy{zzz{|{{{|{{z{zzyyzz{{z{zz{zyyyyyzxyzyyz{zzyyyyyxxyzzzyz{zzzyzxyyzyzy{zzzz{zyzyyyyxyy{{yyz{z{yyxzzxzz{zz{y{yyzyyzxyyzyzzzzyyzyzyxyyzy{yyzzzyzxxzzzyzz{yzzy{yyzyyyyxzzzzzzz{yyyyyzyyyzy{{zzzzyzzyzyyzzyyzz{zyzyyyyyzyzyyzzyyzzzyzzyyyzyzzz{yyxyyyzxyzyzzzzzzzzyyyzyyzzz{yzz{{zxyzyzyyzz{{z{{zyzzyyzy{yzz{{{zyyzyyyzzyzyzzzzzz{z{zzyzyzzzzy{zzzzzzyyzz{zzz{z{zzz{zyzzz{{{{{{zzzzzzzzzzz{{{{{{{{y{yz{y{{{{z{zz{zzyz{zzzz{zz{{{zzzzyz{yz{zzz{{{{yzzzy{{z{{z{{|{{y{{zyzy{z{zz{{z{{zzzyzyz{{{z||{{{zz{zzzz{{{{{{{zzzzz{zz{|{zz{{{z|zyz{zyz{{|z|{z{{zyzyzz{z{zz{zxyxyyzyzxzzy{yzzzyyxyzzyyyyyyyzzzyyzxxyzyyyyyzzzzyyyyyzzz{zzzzzyzzzzyyyyyzyz{{z{{yzzyzyyxzzyyzzzzyyyyyzxz{y{zzzyzyyyyyyyyyzyzyzzzyyyyyyyyyyzyzy{yyyyzzyyyzyyzzzzzzyzzyxzyyzzzzzzzyyyyzxyxyyyzyz{zzzyxyyzyyyzyzzzzzzzzzzyyzzyzzzzz{yyyyyyyzyy{{zzzzyzyyy{zzyyzzzzzzzzzyyyzz{y{zzzzz{yzzyzzy{zz{zz{yzzyyyyzzz{yzy|zzzzzzyzzzzzyzzzzyzzzzzyzyz{z{{{{xzzzzz{zz{{z{{z{zyzzzyzz{{|zz{{z{zz{zzzzz|{z{{{{{{zzzzzz{{{|{{{{zyyyz{{zz{{|{{{{{zzzzz{{{{zzz|{zzzz{y{{z{z{|zzz{{zzz{{{{{{z{zz{{{{zyzzzzzzzzy|{{{|zzzzzzz{|{zz{{zzzyzzyzy{z{{y{zyyyyyyzyzz{y{y{{zzzzzxxyyzyzyz{zzyzzyzyzzzzzzzzzzz{yyyyyz{zzzz{zyyyzyzyyzyzz{zzzzyyxzyxxy{zzzzzyzz{yyxyyzzzzyzzzyyzyyyzzzy{zyzzzyxyyzyyzzzz{x{{yzyxzxyxzzyzyyyzyzyxyyzxyzzzzzyzzyxyzzzyyz{zzyzzzzzyxzzyzyzyzz{{zzyzyyyyzyy{yy{z{zyzyzyy{zzzz{{z{zyzyyy{yzy{zy{z{yzzyyyyzzz|{z{z{zzzzzzzyz{{{{{zzzz{zzzzyzzz{{z{zzyzzzyzzzzz{zz{zzyyzz{yzz{z{{z{zyzzzzzz{{{{{{{z{yzzyzzyzz{{{{z|{{{|z{{{yz{zz{z{{{zzz{{zz{z{{{z{{zz{zz{{zz|{{{{{z{zzzzzzzzzzz{z{{{zzzzyzyz|{|{{{{z{z{{z{{z{zz{z|{{zzzz{z{{zz{{{{|zzyzzzzy{{|z{{{|zz{z{yzy{z{zzzyzzyyzyyzzzz{zzzzzyzyyxy{zyzzyzzz|zzzzx{{yzzzzzzzzzzzyzyyzzzzzyz{zzzyyyy|yzzzz{zzzzyzzzyzyz{zzyzzzzzzzzyyy{{zz{{{zzzzxzzyzzzzxz{zzyzxyyzyyzzzzzz{{{zzyyzyy{yzzzz{{zz{zyzzyzzzzzy{zzyzzzxyzzyzzz{zzyzyy{yzzz{{yzz{{yyzyzzzyy{{zz{{yzzzyyyzz{z{yz{zz{z{{zyzy{zzzz{{{zzzyzyzy{{zzzzz{z{zzzzzzxyzzz{zzyzzzzzzz{|{z{{{z{yzzzy{{z{zzz{|{zzz{zz{zzz{{{{{{yz{z{zzz{{{{|{{|{y{zzy{y|z{{{{z|{yzzzz{z{{{{{{|{zzzzzz{zy{|{z|{{{zzzzzzyy{{z{{{{{{{{zz{z{{|{z{{z{zzz{{|zz{z{|{|{z{zy|zy{{{zz|{z{z{zyzzzzy{{z{z{}{z{zzzzz{zz{{{{{zz{z{zzyz{{{yzyzyyyyxyyzzzzyyyz{zyzzxyyxzzzzz{z{zyzyyzzyzyyz{{{zzzzy{yyz{zz{yz{zyzyyyzyyzzz{yz{|yyzyyzyyyz{yy{zzzyzyyyxzzzzyyz{zzy{yzzzyzyyyx{zzyxyyzyxzzzzzzyzyyzyzzzxy{z{z{{|zzxzyxyxyyz{zyzzzyyyzzzyyz{zyzzzzyyyyzzzyzzzz{{zzzyyzzzzyz{zzzzz{{zzyyxzyzzyzyzz{zyzyz{zzzzzzzyz|yyzzzzyzzzzz{{|zzz{yzyzzzzzz{{{{zyzzzzyz{zzz{{{|zzyz{zzzz{{zz{zzyyzz{zzz{z{{{{{zzzzzzz{z{{z{z{{{zzzzzxzy{z{z{{{{{yzz{{{zzz{{{{{{zz{zzz{{z{{|{}{z{zzzz{zy{|{{{|{{zz{z{zyy{{{z{{z|{zz{zzzz{z{{z{{|{{z{{{zz|zzz{{{{{{zzyzzzz{z|{z|{zz{zzzyy{{z{{z{{zy{zyzz{zz{zzyzxzyzyyyzzzyzyyy{{yyyyyyyyzzzzzxz{zyzyzyyxzz{z{yzzzyzzyyyyz{zzzz{zzyyyxyyxyzy{zzzzzzyyyyzyyz{{zy{yzzyyyyzyzzzzyzyzyyyyyyyzzzyyzz{zzyzyyxzzyzyzyzy{zxzyyyyy{yzyzyzzyyyxyyyyzyzz{z{yzyzyzzyyyyzyzzzzzyyzyxyyyzyzyzzzzyzyyzzyyzz{z{|zyzyxzyzyzz{{zzyzzyyyyxzzzzzzzyzzyzzyzzyyzz{z{zz{zzyzzyyyzz{{zz{yyzzyyyzyzz{y{z{zzzz{zzzzzyzz{zzzyzzz{zzyz{|zz{zzzyzyz{zz{{z{{|{{{zzzzzyzzzz{{zz{zy{{zz{z{{{{{|{{zyzzzz|zz{{{{{z{{z{zy{zzz|{{{||{{zz|zzzz{{{{{{{{zzzzz{zz{{{{{z{z{{zzz{{z{{{|{z|zzzzyy{zy{{zz{{{{{yyzzyzyzzz{zz{zzz{zzyzzz{{z{{zyzyzyzxxyxz{zyyzyyzyyyyzzzzzy{{{zzyyzzyyzzzyzzzzyzyzzyyyzy{yzzzzzzzxzxyzyzzyzyyzzyzyyyyyyyzzyzzzzzyzyyyzyyzzzyzzzyyzyxyyyzzyzyyyzyyyyyyyyzzzzzzy{zzxzyzxyzzyyzzzzzyyxyyyyyzz{yzyzzzzyzxzyyyyyzzyzyzyyyyyyxzyz{{{zyyzyyyyzzzzyyzzzyzyyzyzyyz{zzzz{zy{yyyz{zzzzzzzzzzzzzzzzzzzzy{{zzzyyzzyz{{{{yz{zzyzyyyzzzz{zz{{z{y{zzyzz{zzzz{zzzzyzzzyzzzz{{{z{yz{yy{zzzzz{{z|{{zzyyzyz{{{{{{zzzzzz{z{z{{{{{|{{zzzz{{zy{{|{{{{|{zyzzz{zy|{{{|{{{y{{zyzz{{{{{{|{{zzz{y{z{{{z{z{{z{{z{{{{z{z{z{{zz{{yy{yz{{{{z{{{zzy{zzzyzz{zzz{{zzzzzyzzzzzzzzz{zzzyzxzyxyzzzzzz{yyzyxyy{zyzzz{zzzyyyy{yzyyzzz{zzzzzyzzzyyzzyzzzzz{yyyyyyzzzzz{{zyyyzzzzy{{zz{zzzzzxzyzzz{zzzz{zzzyyxzyzzyzzyz{zzyyyyzzzzzzyz{zxyzyyyzyzzyzyzzzzyzyzyyyyzzyz{y{zzyy{zzyxzzzzzyzzyzzyzzzyzyyyz{zzz{zyzzxyz{zzzz{zzyzyzyyz{z{zzzz{zyzyyzzy{zz{z{{{zzzyzzyzyzzzzz{{yz{yzzzz{{{|{z{zzyzy{yzy{{{{{{{y{zzzzy{z{zzz{{{{zzyzzzzzz{{z{zz{zzyz{z{z{{y|{{{{{yzzzzzyz|{{zz{z{{{y{zzyzzz{{{z|{zzzz{zzzz{z|{{|{zz{{zzzz}{{|}{{zz{{z{zz{z{z|{|z{y{{zzz{{{z{{{|{{{{z{{{{{{{|{z|{{{{yzzzy{z{{{{{{|z{zyzzzz|z{{z{{z{{zzzzz{zy{zyzzzyzzxyyxy{yzzzzzyyxyyyyy{zzyzyzzzyzzyzzzyzzzzyz{yzzzyzzxzzyzy{{zzzzyyyyyzzzzyzz{yyzyyyzyyzzyyyzzyyzyzyzyzzzyzzyzzyzyxyyyzyzzzzyzzxzxzzzyyzyzzzzzyzyyzyxyyzzyz{yzyyyyxyyyzzzzzyzzyzyyyyzyyzzyyzzzyyzxyyyyxzyzzzz{zyzzzzyzzzzzzzz{zyyyzyyxyyzzzz{{zyzzyxzz{zzyzz||zyzyyyzzyzz{zzzz{yyzyyzzyzzz{{z{{zzzzzzyz{z{zz|{zzzzzzzz{{zzzzz{zyzyzzzzzz{{{{z{z{zzzz{{{{{{zz{|{{yz{zzzz{{zz|{z{zyzzzzz{{{{{z{zzyz{zz{{yz|y{{{|z{{{zzzzz{z{|{|{zzzzzyzzz{z{{zz{{zz{zzz{z{zz{{{z{{{{{zz{{{{{||z{z{|zzz{zzzz{{{z{{zzzy{z{{{{|z{{{z{zzyzzz{{{{{zzyzyxyxyyxxyzyyzyyyyzyyzyzyyzyyyzz{zxzzzyyzyyzy{zzzyzyyzyzzzyzzyzyyyyyyzzyyzy{zzyzyyyyzxzyyyyzyzzzzyzyzyyyzyzyyzzyyyyyyyyyyyzyyzyzyxyyyyyyyyyyyyzy{yzyyyyyyy{zzz{zxyyyyyxxyzyzyz{yxyyyyxyyyyzyzzzzyyyyyyzzyzyyy{zzyyyyzxxxyzzyyzzzyyyxzxyyzzz{zzzzyzyyyxzzzzy{zzz{zzyzzzzzzzzzzzzzyyzzzzyyz{zzzzzzzyzzzzzyzz{{zz{zzyyyyzzyzzzyzzz{zyzyzzyy{zz{z{zyzzzyzzzzzzz{zz{{yzzzz{yz{zzz{z{{{zyzzyzz{{{{{{{{zz{zz{{zzzzz{{zz{zzzzzzyz{{{{{{|{{zzzzz{{z{{z{z{zzyzy{z{{{zzz{{{{zzzzyz{{{zz|{{{zzzzzzzzzzzz{{{{{zyzzz{zzz{{z{{zzzzzyxzz{{zzzzzzzzxyzzzyyzzzyyzzyyzzzyxyyzxzyzzzzzyyyzyzyzzzzz{zyz{yyyyyzzzzzz{{zyzzyyyyzyzyzyzzyyyzyzyyyzyz{z{z{yyy{yyyyzzzxzzyzyzxyyyxyyzzzyzzyxyyyyzyyzzyzyzyzyzyyzxyzyzyzyzzyyyyxyyyzzyzzzz{yyyzzyzxyyyy{z{zyyyyyyyzxzzyz{zzzzyyy{yyzz{{yzz{zyyxzyzyzyzzzzzzyyzzyyzy{zz{zzzzyzzyyyyyz{zzzzzzzzzzzyyyzyz{z{zzyzyzzzyzzz{{z{zyzzyzyzzyzzz{y{{{zzyz{zzzzzzzz{z{z{zzzyzz{z{{zz{zzzzzzzyyzzzz{{z{zzzyzyyzz{|y{{{{{zzzzzzzz|{zzz{zzzzzz{yzz|{z{{{{{yzzyzz{{{z{z|{z{zzz{zyz{{zzz{{{{{z{zzyz{{{|{z{z{{{{zyzz{{{{z{{{{z{zzzzy{{{zz{z{zzzz{yyyz{zy{z{{yzyzyxzyyy{yyzzzzyyxyxyyzzzzz{zzzzyyyzyyzyyzzzzzzzxyzyyzyzzzyzzzzyzxyyyyyyzzyzzyzzzyyzzyzyzzzzzzzyyyzyxyzyzzz{zzyzxyzyyyzyzyyzy{zxzzxxyyyyzzzzyzzyyyyyxyy{zzzzzyyyzyxyyyzyzzz{zzyyxyzyyyzzyyzyz{zzyyxyyyyzzzzyzyyyzzzyzyyz{z{zz{zyyyzyyzzzzzy{zzzxzzzyzyz{{zzz{zzyyyyyxzzy{zz{{zzyzzzyzy{y{{zz{z{yzyzzyyz{z{y{{{yzxzzyyxy{{zy{zz{zzzyzzzyzz{{|{z{zzz|yzz{{{{z{{{zzzzzzyy{zy{z{{zzzzzyzzy{{{{{zzzzyyzz{zz{{z{z|{zzzzzz{zz{{|{{{{{{zz{zzzz{{{{{{{zz{y{{zyyz{{z{{{{|zz{|{z{{|{{z{|{z{{yz{zzzzz{{{{|{{{zyzzyzzz{z{{{yzzzzyzyzz{{{yzzyyxyyyyzyyyyzy{zzyzyyyyyz{zzzzz{yyyyzyyy{z{zz{{zzzzyzyxyzyzzz{z{yyxzyyzyzy{zzyy{zyyyyyyyyz{yzzyy{xyxyxyxzyzxzzzzyyzzyxyzzyzzy{yyzxzyyxyxyy{zyzzyyyyyyyyyyyzy{zzzzyyyyyyzyyzz{zz{yyyyyyyxzzzzyzzyyzyyxxyzyyyzz{zzyzzzzzzyzzyzy{{yyyyyzyzyz{{zyzzzyy{yyyyz{yzz{{zzzyzzyzyxzz{zzzz{zzzyzzyy{z{zz{z{yyzzyy{y{zz|{z|{yzzzzzxz{zzzz{zz{zyyzzzx{z{{{{z{zzzzyzzz{y{zy{z{zyz{yzyz{{{z{zz{zyzyzz{y{{{zz{{{{y{zzzzzz{{{{{{z{z{{z{zz{|{{z{{{zz{{zz{z{|zz{|{z{yzzzzz{zzz{z{{{{{{zz{zzz|{{{||{z{zyyzzyz{{z{||{yzzzyy{yzzz{{zz{yy{zyy{zy{z{zyy|yzyxyyxxzzzyzyzzxyzyxyyzyyzxy{z{zyyxxyzxzzzyyz{zzyzyyxyzzzy{yyzzzyyxyyzyzy{zzzzzxyxyy{xyyzzzzy{yzzzxzyzyyyzyzyzyxyzyyyxyyyzyyzz{yyzyyxyyyzyzzzzzyyyyyyyyyzzyyyzzyyyyyxyyyyzzyzzyyyyzzyyyzzzzyy{yxzyyzyyyzzzzzz{zyyyzzyzxy{zzyyzzzyzz{yzyyzzzyyzzyyyyyxzzzyyyzz{{zyzyyyzzzzzz{z{zyyzyyyzyyzzzz{yyyyzyxyyyz{{zz{{zyyzyyyzz{{zy{{{{zyyzyyyzzz{zz{{zyzzyz{yy{zzzzz{{{zz{zyyyzz{{{{{{{yzzzzyyz{zzzz{{{zzyzzzzz{|{{{{zzz{yzz{zz{z{{{{{{zz{{y{z|{{z|{z{zzzzzyzz{{z{zz{zzzz{zzyzz{{{zz{{z{zyzzyzy|{{y{{{z{z{y{yyzzz|{{zzzzyyzzzzz{zyzzzzyyzxyyyyzzyyzzzzzxyyxxyyzyzzzzzzyyyzyyyzzzzzzzyyzyyzyyyyyzzzzzzzzyyyyyyy{zzzzyzzyyzzyzzyyzyzyz{yzyzyyyxyyy{zyzz{xzyyxyyyzzyzzzzzyyyyxyyxzzyyxyzyyxxyyyxyzyzz{zzzxzyyyyyyyyyyyyzzyxzyyyyyzzzyzzzzzxyyyyzyz{zzyzzyyyyyyyyzzzzzyz{{zyyyyyyyzzzzz{y{yyzzyyxzyyzzzz{zyyzzzyzzzzzyzzzzzyyyzzzyy{z{z{yyyyzzzyzyz{zzz{{zyyzzzxzzz{zz{zz{yyzyyzzzzz{zzz|zzyzzzxzyzzyzzz{{zy{yzyyyz{{|z{z{{yyzzzyz{{zz{||{z{zzyzzzz{z{{|{z{zzzzyzzz{zzzz|{{{zzzyzzy{{|z{{zzzy{zzyz{{z{{z{{|zzz{zyz{|z{{zz{{yzyzzzzz{{zzz{{{{yzzzzzz{y{{{{{yz{yyyyyz{zzyzy{z{yyzxyyyz{{zzz{yyyxzyyyzz{zzy{zyyyyyyyyzzyyzzz{zzzzyyyyzyzzyz{zzyzyyzzyyy{zyzzzyyzzzyzyzyzyzy{zzzyyyyyzyyzzz{{zzyzyyzzyyzzyyzzzzyyyyyyyyzzzyz{zyyyyyzyzzzzzzz{zzxz{yyyyzzzzzz|{yyyzyyzyyzyyzzzzzyzyyyyz|zzzzz{yyyyzyyzy{zyzzz{{z{zyzyzy{{zzzz|zzz{zzzzyzyzzzz{{{yzyzyzzzzzz{z{{zz{zzzzzzz{z{z{zzzzzz{zyz{zz{{{zzzyzzzzz{zzzzz{{yzzyyzzy|{{{{{{zzzzzy{{{{{z|zz{{zzzzzyzy{{{{z{|zzz{{zzzyz{{{{{z{{z{zz{{z{zzzz||{{zz{{zz{{{{|z{|{z{zzzzzz{{|{{{{{zzz{zz{{{zzz{||{z{{zz{{{z{{||{}{{zz{yzzz{{z{z|z|{zzzy{zy{{{{zzz{zz{yyzzyz{|z{zzzyxxyyyyxyzzyyzzyxyyyyyyyzzzz{zyzyzyxzyzyzzyz{zz{zzzxzyyyyzz{zz{zyyzyyxyxzyyzzzzzyyyzyyyxzyyxyzzzzyyyyyyyzzz{zzzyxyyyzyx{zzyyzzzzyyzyyxyyzyzyyyzzzyyyxzyyyyzz{zzzxyxzxyyyzzyzzzy{zzyyzyxxyyzzzzy{yyyyzyyyyyyxyzzzzzzyzzzz{zyzzz{{xyyyzyyy{{zzzz{{zyzzzyzzzzzzzz{{yyyyyyyyzzzzzz{zzxyyyzyxyzzyz{{zzyzzzzzzyz{zzzzzzyzzy{zz{zzyz{zz{yzzzzzz{z{{{z{zyzzzzz{z{{zzz{{{yzzzzzzyz{z{zz{{zzy{{zzz{{zzz{{{zzzyzyzz{zz{{{z|{yzzyzzz{zz{z|{|zzzzyzzzz{{{{|{{{zzzzzz{z{zz{z{z{{{{{zzz{zz{zz|{{zzyzz{z{zz{z{z|z{zzz{zy{{zz{z{{zzyzyzyyz{{zyzyzyxyxxyyyyyzyzzzzyyyyxxyy{zzyzzzzzyyxzzwzzzzzzz{{{zzyyyyzzzzzzy{zzyyxyzxxzyzzyzyzyyyzzyzxyzyyyz{zyyyzyzyxyyzyzyzzyyyxyyxyzyzyzyzzyzyyyxyxzyzyzyzzyzyyxyyyyzzzzy{zyyxyyyyxzzzzzyzyzyzzxyyyyzzzyzzzzyzyyzzyyyyzz{yzyyxyzyyxzzzxz{{|zyyyzxzyyzzzzy{zyyzzyyyyzy{yy{z{zxyyxyzyzzzzz{zz{yyyzyzzyyyz{{{{zzyzzyzzzzzzzzzyzzyzyyzyzzzzyzz{yzzy{zzz{{|{{yz{yyyyzzzzzzzzz{{{zyzzzyzyz{{z{z{zzyzzzzzzz{{zz{{{zz{z{zz{{{z{{z{{zzz{yzzz{{z{{{z{zyz{zz{z{z{{zz{{zzyz{zy{{zz{zz{{{zzzz{zy{{{{z{{|{{yyyzzzyzy{zz{{{yyz{yzz{{{zzz{zy{zz{yzyzzzz{zyzyzzyyzzxzzzyzzz{zyyxzyzyzzyyzzzzzyyxxzzzyzzzzzyzzyzyyyyyyyzzyyzzyzxzyyyyz{z{zz{yyyyyyyyyzzzyzz{zyyyxyyzyzyzyzzyzyyzyyyzyyzyz{yzzzyyxyzyxyyyzzzyyzyyzxyyzyyzyzzyzzzxyxzzyyyyzyz{{yzyzyyzyzyyzyzzzzzyyyyyyyzzzzyzzzyyyyzyzyzz{zzyzzzzzyyzzz{zzz{yzzyyyyzzzyz{zzzyzyzyyyyyxy{{yzz{zyzzzzyyyzz{{yzzzzyyzyzyyz{zzzz{{{yyyyzyz{zyz{{zz{yzyzz{z{{{{z|{zzzyzyyzzzzzzz{z{zzz{yyzzz{{{z{{zzzzyzzyz{{{{z|{zzzzzyzzyz{{z{{zz{zzz{zzzy|z{{|zz{zzzzyzzzzzz{z{{zzzzzyzzz|{|zz{{zyzy{{zzz{z|{{{{yzyyyy{yyzz{{{{{{zzyzzyzz{zzzz{zzzzzyzyzzyz{zzzzyxxyyyzxx{zzzyzzzyyyyxzy{zzzyzzzzyyxyyyyy{yzyz{{zzzyyyyzzyyzyzzzzzyyxyzyyyyzyzz{zyyyyyyyz{yyy{yyzyzyyyyxyyzzyzyyz{yyzyyxyzy{xzz{yyyyyyyyyyyz{zzyyzyyyxxyzzzyzzyyzyzyyyyyyy{zz{{{yzzyyyyxzz{yyz{zyzyyyzyyzz{yyzyzyyyxyzyzzyzzzz{zzzyyzyyzz{{z{zz{zzzyzyzyzzzzzyz{{yzzyzyy{zzyyzz{zyzzzyyxz{y{z{zzzyzzzzyyzz{{yzz{zzyzyyzzzz{zz{zyz{zz{yyzzzzz{zzzzzzzzzzyzzzz{{{{zzzzzxyy{z{zzz|z|yzz{|zzz{{z{|{{zzzzz{z{{{{z{z{|z{yz{z{zz{z|z{|{{zzyz{{{z{|z{{{{{zzz{zzz{y{{|{{{{zyz{zzy{|{{{||{{zzyzzzz{|{z{{{{zzzzz{zzy{zz{zzzzzy{zzzzy{y{zzyzyyxyyxxxxyyyyzz{yyyyzxx{{zyz{{zz{yyxyyyxzyzyzz{zyxyxyyzyzyzzzz{yyzxyxy{yzz{zy{yzyxyyzyyyy{zzyzzzyyzyyzyyyyyyyyzyzyyyyyxyzyzyyzzyyyyxzyyyxyzzzyzyyyyyxyyyzzzyzzzzyyyyyxxxyzyyzzyzzyxzyyyxyyzyyzyzxyzxyyyxy{yzyzzzyyyxyzyyzzxzzzzzzzyyyyyyzyzzzzz|zzyyyyzzz{z{zzzzyzzyyyzy{zzyz|z{zzzzyyzyyyyzzzz{zzyzyxzzzzzzzzzzxyzy{yzyz{{y{zzzzzyzzzyz{zz{zzz{{zzyyyzzzzyzyzz{zzz{zyyy{zzyzz{zyyzzzzyy{{z{{{{zz{zz{zz{{{zzzzz{zzzzzzzzz|z{{{{{zzz{z{zz{{zzz{z{z{zzzz{yzz{z{{{{zzyz{{yz{z|z{z{|zzzzzyzy{zzz{{{zzzzyyzzyzyzyzz{z{zyzzzzzzz{{zzzzzzyyzyyyzzzzyzyzyyyyzxyyz{zyyzz{zyyyyyzyzzz{zy|zyzyxyxxzzyz{zzz{zyzyxyzyzzz{z{z{zyyzyxyyyzzzy{zzzzyyyyxzz{{zyyzyzzyyyyyyzzzyy{yzzxzyzyyyzzzyyyzyzyzzyyyyz{yyzzzzzyyzyyzxyzz{yzzyzyyyxyxyyzzyyzzzyzzyyzyyz{yyy{{zzyyzyyyyzzzzzzzzzzzyyyyyz|z{y|z{zyzzzyyzzz{zzyz{yzzzzyzyzzz|z{zzzzzzzyyyy{{zzz{zzzzzzzyy{{{{zz{zz{yzzz{{z{|{y{{zzzyzzzzz{zz{|z{{{z{zy{zz{{zz{{zz{zzzzyzyzzz{|{|z{yyz{zzzz{|zz{|{zzzzzz{zzz{{{{{{{z{zyzzzz{zzz{{{{zzzzyzz{{{{zzz{zzzy{yz{{{zz{z{|{zzz{{zz{{{|{{{{zzzy{yzzz||{{|{{zzyz{z{yzzz{z{{z{z{{zzzyzzzzzyyzxyxyyzxzyzzyzzz{zyzxxyyyzzzy{zyzyzyyxyyyzz{yyyzzyxyyyyyyyzyzyy{yzyyyyyyyzzzzzzzzxyyxyxyxxzyyyzyz{yzyzyzyzzzyz{yyyyzxzyyyzxyzyzz{yyxxyyyyyzyyyzzyyxyyyyxyyyzzzy{zyyyyyyyxyzz{yzzyzyxyyyxxyzyyzzzyzyyxyxzyyzyyzzyzyyzyzyzxz{yzyzzzzyyyyyyyzzzy{yz{zzzxyyzyyyyzzzzzzyzyyzzzzzz{yzzzzyzyy{zyzzyzzzyzzzyyzyyyzz{zzzzz{yyyyyyzzzz{z{{{zyyyzzyzz{z{{{zzzzzzyzzyzzz{{{{yzzyxzzzyzz{{zzz{{zzzzzz{{zzzz{{zzzzzzz{zz|z{z|{zzzzzz{zzz{z{z{{z{zzyzzzy{z{{z{|{zzzy{zzyzzz{z{|||{z{z|yz{{zz{{{{zzyzzzzz{yz{z{{{z{{zz{zyz{{{zzz{yzzzzzzzz{yzyzzyyyyxyyyyyyzzzzzzxzyyyzzyyzyxzzzzyyzyyzzxzz{zyzz{zzyzyyxyyyyzyyzyyzyxxxyyyyzyyzz{yzyyyxzyyzyzzzzzyzyyyyyxyzzyyzyzyyzyyzyyzzzzyzzzyyxxyzxyxzzyzzzzyyzyyyxyyzzyzzzzzyyyyzyzyy{zyyzy{yxzxyyyzzyyyzyzzyxyyyyyyzzyyzy{zyzzzxzyyzzzzz{yzyyyyyyzzzyyyz{zzzyyyyzyyyzyzzzzyzzzyzy{zzzzzzzyzyzyzzyyz{z{z{{zxyzyyyyzzzzzzyz{zyyzyzxzyzzzz{zzzyyzyyzzzzz{{{zzy{zyzzzzzzz{{z{{{zzzzyyyyz{zz{zzzyzyzyyz{{zz{{|{{zzzzzz{z{zyz{{{zz{{zz|zzz|{zzz|{zz{zz{z{{z{zz{{{yzzzzz{{{z{{z{{zzz{zzzy{zz{z{{{zyyy{zz{{{z{z{|z{{zyzzzzzzz{z{{zzzzzyyzyz{{yzyxyzzyzxyyyyz{z{yzzyyyzyyxyyzzyzzzz{zyxxzyxyyzyzzzzyxzyzxyyzyyzzyzzyyyyyyyyzzzzzzzzyzyyxyyyy{zyzzzyzyyzzzyzzzxyyyzzyyyyyzxyzyyzyzxyzzyyyyyyzyzz{y{yyyyzxxxxyyzyzzzzzyyyyxyyzz{zzzzzyzyxyyyxy{zzyyzyzyyzyxyyz{yyyyz{yxyyyxyxy{z{zzzzzzzyyxzyyzzzyzzyzzyzzzzzzzz{yyzzyyyyzyzyz{zz{yzzzzz{yyy{y{zzzzz{yyy{yyzy{{zyzzzzzyyyzyzzzz{z{{z{zzzzy{zyzz{{zz{{zzyzzzzzzzzzy{{zzyzzzyzz{{z{{{{yzzzzzyzyz{zzz{{{yz{zz{zzyzz{z{{{{z{zzzzzz|{{z{zzzz{zzzz{z{|zzzz{{zzz{yzzz{{z{{{{{zy{zzzz{{{{{{{{{{zyz{zzz{zz{{|zzz{zzzzzzz{z{zzz{zyzzzzz{z{{zyxzyyyxyyyxyyyzzzz{zyyyyyyzyyzyzz{zzyyyyyyxzyzzzzz{zyyyyxyyyz{yyz{zyzyxxxyyzzzzzzzzxyyyyyxxyzzyzyzxyzyzyyzyyyyyyyyzyzzxyyxyyzyzyzz|yyyyyxzzyzzzyzzyzxyzyyxyyyzyzzyyx{yyyyzyyzzyyzzzyyyyyyxyzyzyyyzyxyyzyxyxyzyyyz{zzxzyzzyzyz{yyzyzzyyxyyzyzzyzzz{zzzyyyyzzzxyzz{z{yyyyzzyzzzzyzy{zzzzyyxxzzzzzz{{yyyzyyyzyyzzzz{{zyyyzyzyyyzzzzzzyzzzzxyyzy{{z{{zzyyzzzyzyzzz{{zz{zzzzzzzz{z{zzz{z{yzzzzzz{}z{zz{{zz{zzz{zz{y{zzzzzzzzzzyzz{{{zz{|{yz{zz{z{zzzz{{{{{z{zz{{zz{{{{{{z{zzzzzz|zz{{z{|zzz{zzxz{z{zzz|{{zzz{{zyz{z{z{{zzyzzzzzy{z{zzzyzyyxxxxzxzyyzyzzzyxyxxxyyyyyxzy{{zyyxyyzyyzzzzz{zyxyyyyyyyyzzyzz{xzyyxyyyyzxyzyzzxyzyyxwyzyzxzzz{zxyyxzxyyyzyyzyzyyzzyxxyxyzyzzz{yxyyyxyxyyyyyyyxyzxywzyyyzyzzzyyyxyyxyyxyyyzyy{zzyyyyxyyyyzyzyzyyyzzyyyzyzyyyzzzyyyyyzyxyyzz{yzyyxyyyyyyzz{yy{{zzyyzyzzxzzzzzzzzyyzyyzyzyyzyzy{zyzzyxyyyzz{zz{zzzyyyyzzxyzyyxz{y{yyyzyyzzz{zzzzzzyzyzzzyzzzz{zzzzzyy{z{{zzy{y{zzz{yyyyyz{z{{yzzzzyzyzyzyz{{y{{{yzyzyz{z{zzz{zzz{yyz{xyzyzzz|z{zzzzzzzyzyyzz{z{{z{yzyzzzz{{{zzz{|{yzyzyyz{z{|{{{zyzzzyyyzzzzzzzzzzxzzyzzyzzy{zzyyyzzyxyyyyzzzzzyzyyxyyyyxyyyzxyzyzyzyyyyzz{zzzzzyyyxxzyyyyyzzy{zyzxzyyxxzyzyzyz{zzyyxyyxwyy{zyyyzyxyxxyyzyzyxzyzzzxyyyxxxyyzyzyzzyyyxxyzyzzyzzzzzxxxxzxzxzyyxyzzyyyxzxyxwyzyxyy{yyyxyyyxxyzyyzz{zyyyxxyyxxyzyyzzzzyyxxyyyyyzyzzyzyyyzyzzyzyzzzzyzzyxzzyyyzzzyyzz{zyyzyzxzzzy{zz{zyyyyyyzzzzzzzz{zyyz{zxzyyzzyy{zzzyzyzxyzyyy{zz{zzyzzzyyyyzzzz{yyyzyzyyyzyz{z{{z{yyzyyyzyy{z{{{z{zyyzzyzyzzy{zzz{zyyyzzyzz{{z{z{{{zzyyzzyzzzzzz{zzzzzz{zzz{{z{zzz{yzzz{{z{y{{{{{z{zyzzzzz{zz{{{z{z{zyzzzz{zzzzz|{zz{yyz{z{{zzz{{{{yzzzzzyzzzzz{{zzzzyxxzzy|{{zzzyyyzyyyzzyzzzyyzyzzyxyyxyzyyzzyzzyyyyyyxy{yzyyzz{zyzzyxyyzzz{yyzzzyxyyyzyzyzyzzzyzxzxyzyyzzzzzzzyzyyyzyxyzzyyyzyzzzyzzyyyzyzyzzzyzzxxzyyyzzyzyzzxzyxzxzyxyzzyzyz{zyzzxxyzyyyzxyzzyyyxyxxyyzyzzz{zyzzyyyyzyzxzyzzzzzyyyyzzzyz{zyzz{yyxzxzzyzzyzzzzyzzyyyzyyyzzzzzzzyyyyyyyzzyyzyzzz{zyywyyz{zz{zzyzyyyzyzyyz{{{z{{zzyyzzyyyzzzy{zzzyyzyzzzzzz{zz{{yyzyzzzyzz{z{{{{zzzzyxyzz{z{{z{{zzzzyzzz{{zz{{{z{zyyyz{zy{z{{{{{zyyy{zzz{|z{{z|{{z{zzzzzzz{zz{{z{yz{yyz{{zz{{y{{|{zz{yzz{{zz{z{{zzyyzzzzzz{{{{|{yyyzzzzyz|zzzzz{{z{x{yzy{y{{zzyyxyyyyyyxzzyzyz{zyzyxyyyxxzyyyzy{yzzyxxyyzzzzzz{zzyzzyxzyyzzzxyz{zzyxyxyyxyzzxz{yzxzyzzxyzzyyz{zyyz{yyyxyyzyzzyzzzzzyyyxyyxyyyyzzxyyxxzxyyzzyyzzyzzxxyxyzyzyyyyzzzyyyyzyy{zyyyzzzzxyyzyyyyzzzyzzyzzxyyyyyzzyzz{yzyxyzyyyxyyzzyy{yxzyzzyyyyyz{yzy{yyyyyyzyyyzyyzzzzyzyyyyzzzz{zz{{zyyxzyzyz{zzzzyzzxzzyzyyzz{yzy{z{zyxyyyzzz{yyz{zzyzzyzzy{{{{{{|zzzzyzz{zyzy{z{{{zzyyzyzzz{{zzz{{zyyzzzyz{{zz{z{z{z{zy{{zz{yzz{{{{zzzzzzzz{z{z{|{zz{yyzzzz{z{z{{z|zzzzzz{z{z{z{{{zzyz{zzzzzz{{{{{z{zzzzy{zzyzzz{{{zzzz{z{z{{{{{z{z{zzzyzzzyyzzzyzyzyxyzxyyyzzxzzzyyyyyyyxzzyzyzzzzyzyzyyyyzyyzzzyyyyzyyzyzyzzyzzyyzyxyyyyzzzyzzyzyyyyyyyyzzyzyzzyyzyyzyyyyzyyyyzzyyyyyyyy{yzzzzyzyyyyzyyyzyyyzzzzzyyzyyyzzz{zyzzzyyzyyyyxyyzzzyz{zyyyyyyyzzzzyy{zyyyyzyyyyzzyyz{yyyyyzzyyxz{zzy{zzyzyzyyzzzzzyz{{zyyzyzzzyyzzzzzzzxzzyzyzzzzy{z{zzyzzzyzyz{y{{yz{zyzyyzyyyzzzzzzzyyzyxxyy{zzz{{zyzyyyzzzzzzz{z|z{yyzxzyyz{{yz{{{{zyyzzzyz{z{zzz{zzzyzzyy{{|{zz{{zzzzz{zz{zzz{{{{{{{zzyzzzz{{{zz{{zyzzzzzzz{{{z{{z{{z{zzz{zzzz{z{{{zzz{zz{{{{{{{{{{{zz{zzz{z{zz{|{{zzyzyzyzz{{{z{zzzyyzzz{zzz{z{xzyyyyyyxyyzyzyzz{yzyyzyzxzzzyzz{z{zyxyyzzzzyyzzzzzyyzyyyzyzyyzzzyzzyyyzxxyz{zzzzzyyyzzzyyy{zyyyzzyxzyyzyyyyzzzzy{zyyyyzyyyyzzyzy{yyzxyyyyz{zzyz{zyxxyyyyyyzzxzyzzyzyxyyyyyzzzzz{yyzzxyyyyyyzzyz{zzzzzzyxzyzyyz{{zyxyyzzyzyyzzzyzzzyyyyyzyyz{zzy{zyyzyxzzz{z{zz{{zzzzzyzzyy{zzz{zyzxzzy{yyyzzzzzyzzy{{yyzy{zz{zz{zyzzyyyyyz{{zz{zyyzyzyyzzzz{{{{{zyyyz{yzzz{z{{{{{yz{zyyzzzz{z{{{z{xzyzz{zz{{z{{|{zzzzzzzzzz{{z|{{zy{zy{zzz{zz{{{{{zyzzy{{z{{|z{z{zzzz{y{{{z{z{{|{z{zz{zzy{{{zz|{zzzyzzyzz{|z|{{{{{zy{zzzzzy{{{zzz{{{yyzyyzzzy{zyyyyxyyxyyyyzyzzzyyyyxyxyyzzzzy{{zzxyyyyxxyyzxzz{zzxyzyyxyzzyzzz{zzyzxyxyxyyz{zyz|zzyyzyyxzzz{y{yyzyzyyyyyyyzzyyzzzyzxyyyyzxxzyzyyyxxyyxyyxyyzyzyzyyyyyyyxyzzzzyzzzzyyyyyyx{zzzyzzyyyzzy{zyxzyzyyzyyyyyyyyyzyyzzzzxxyyyzyyzyzzzzzzyyyyyzzyyzzzy{zyyzzyyyyyzzyzzzz{yzzzyxyyzzy{zzzzzyyyyyyzyzyz{{zzzyyyzxyzzz{zy{{yzyzyyzzyy{zzz{zzzzyyzzyz{{z{{{y{zz{zyzzzzzz{z{{{zyyzyyzzzz|z{z{zzz{zzyyzzz|{z{{zzzzz{zy{z{{z{{z{z{zzzyzzz|{y{z{{{{zzyyzzz{{zz{{{{z{yzzz{{{z{{z|{{{{zzzzz{{z|{{|{z{zz{zyzz{yzz{{z{y{yzzyyz{zyzz{zzz{zyyzyzzz{{zyzyyxyyyyxxy{zzzzzzyyyyyyyyz{zz{yzyzyyyzyxzzyyyzzzyxyzyzyxzzzzzzzzzyyyxxxxzzzyyyzzzyzyyyzyyyyyyyzzzxzyyyyyyx{yy{yzyyyxyyxyzyyyzyzzyxyyyxzyyzyyyzzyyxzxxyyzyz{zzyzzyyyyyzxxyyyxyzzzxxxyyxyy{yzyzzzyyxyxyyzyyyyzzzzzxyyzzxyzzyz{yz{yzyyyyxyzy{zzzyzzzxyyyyzzzzzzyzz{yzyyzxxyzzz{zzz{zzzzzyxyzzy{zzzzzzzzzxyzyz{z{z{yzyz{zyyzzzzzzzzz{zzzzyxzyzz{zzzzyzyzyzzyzy{{z{{|{zyzzzyzyzzzz{{zzyyzz{{zz{{{yz{zzzzzyz{zz{{|{{{|{zz{zzzz{{{z{{|{{zzzzyz{{{z{zz{z{zzzyzz{z{{z{z{{{zzz|{z{zzz{zz|{zyzzzyz{z{zz{{{{{zyzyzzzyz{{{y{zz{zyyyyz{{{zyyxzyzyxyxyyy{zyyzyzyyyxzyyyyzyyyzyzyyyyyyyyzyyzzz{yyzyyyzyyxzzzyyzzzyyxxyxxzyyyzyyzyyyzxyyyyyzyyzzxxyyyyyyyyyzxxyzzyyyyyyyzzyxzzyz{yyxxzyxyyyzzyyzyxyxxyyxyyxzyzzzyxxyyyxxyzyyzzz{zzyyyxyyyyyyyyyzzyxyyzyzxyyzzyyzzxxyyyyyyyyyzzzzzyyyyyyyxzzy{{zzzzyxxyyyy{zzz{zzzzyzzwzyyyyzyzzyzzyzyyzzzzzzzzzzzyzyz{zyyzzzzyz{z{yyxyzxzy{{yzzz{yyyzzzzyyz{zz{zzyyyzzzyy{z{{y{{zyyzy{zxyzzz{zzzy{zzyzyzz{z{zzy{zzyzzzzz{zzzzz{zzzzzyzzzy{z{zz{{{{yy{zyzz{{zy{{{{zyz{yzzzzz{z|zz|{zz{zyz{zz{zz{z{zzzyx{zyzyzzy{{zzzzzxyz{z{zzzzzzzzzyzzzyzz{yzz{zyyzyyzxxzzzzyyzzzyyyyxyyzyyzzzz{zyyxxyzyyzzyzyzyzyyyyxyyzzzzxzyzzyyyyyyyzzz{yyzzzyyyyyyyyyyyzyzzyyyyzxyzzyzyyzzzyyyxyyxyzzyyzzy{yyyzxxxyzz{yzyzyxyzyyyxyyyyy{zzyyxzxxxyyzzyzyzzzyyxyyyyxyyyzzzyzyxyyzxyxyzyzzzyzyyyyyyxyyyyzyzzzyyyxzyzyzzzz{yzz{yyxyyyyy{zzzzzzzzzzyyzyzzzyz{zyyyzzzyyyzzzz{zzzzyzyyxyyzz{zyzzyzyxyyzyyzzxzz{z{zzyzzyzyzz{{{{{zzzzzzz{yyzz{{z{{|yzyzzyzzz{zzz{z{zzzzzzyzz|zz{{{zz{yzyzz{{zzzz{{{zyzzzzzz|{{zz{{{zzzz{zyz{zz{{|{{zzy{z{z{z|zzz|{zzxzzyz{z{z{{z{|{yzyzyz{{z{{z{{{{zzzzyzzz{{{zz{zyyyyzyyzzz{zyyyzxxyyyyzyyzzyzzyzyzyyyxyzyzyyzzzzzyyzyyzyyyyyzzzzzyzzyxyyzyzzyz{zyxyxyyyyzyyzyyz{zxyxxyyxzzzyzyyyyyyxyyxy{yyyyzzyyyyzxzyyyyzyzzy{xxxyzxyyyzxyyzzxyxyyzyxzzyzyyzzyzyzxyzxyyzzyyzz{yyyyyyzxzzzyyyyyzyyyyyyyyyzyyz{zzyyyyyyyyzzzz{{yzxyyzyzyzzyyzzzzzzzyyyyyz{yzyzzzyyyyxyyyzzyyzz{zzyzzzyzyzzzzzzzzzyyzyyzyzz{{{y{zzzyzyyyzzyyy{zzyz{zy{zzzzzzz{zzzzyzzzzz{zzz{{{{zzyzzyzyzzz{zz{{z{yyzzzzyz|{z{{{zzz{yyzzz{{yz{{{{zzyzzyzzyz{{{z{{zz{{yzzzz{zzyzz{zzyzzyzzy{{z{{{{z{zzzzyzz{z{{{{{{z{yyzzzzzz{{{|{zzyzzzzyz|y{yzzzz{zzyyyyzz{zzyzyzxyyyyzxzyzyzyzyxyyyyxxxzzzzzzzzzyzxyyyxzzzzzyzyyyyzyyzyyyyzz{{yzxxyyxyxyyyyyzzzxxyyzyyyyzyyyzyzzyxyyxxzzzzzyzzyyxyyxxyxyyyzyzzzzxyxyxyyyzzyyzyyzyzyyywyyzzyyy{zzxyyxyyxxzzyzyzzzxxyyxzxyyyyyzyzzyyyyyxyyzyxz{zzyyyyzyyxzzzzzy{zzyyyxxxyzzyyyyz{zzyyyxzz{yzyyzyzyyzyyyy{zz{yzzzyzzzzyyzzyzy{z{yyzzyyzzyxzzzzzzzzyyzzyyxyzzzyz{zzz{zyyyzzzz{zzz|{zyyzzyzzyzy{{|{{zzzyyzyyzy{zzz{{zzzyzyzz{{zz{{{{zzyyzz{zzz{zz|{{{yzzyzzzz{{{{z{yzzz{zyzz{{{{zzz{zyy{yyzyz{zz{{zzzzyzzyzz{z{|{z{{zzzyzzzyzzzzz{|{yzzyzz{xzzzzyzz{zyyyzzzz{zzzyxzyyzxzyyyxzzzyyyzzzxyxyxyyzzyzzzzyzyyyyyyyyyzyz{zzzyyyzyxxyyyzyyzzzyyxyzxxyy{yzzzyxyzxyxyyyz{yyyzyzyzyyyyzyxyyyyzyyyxxxyxyzyyz{zyyyzxyyxywyz{zzyyyyyxxyzyyyxyzzzyyyyyxxxyxyzy{yzzzyyyyyyyxyyyyyyyyyzywyyyyyzxzyzyzyyzxyyzyyyyyzz{zyzzxyyyyzzyyyyzzzxyyyyyzyyzyzzyzyyyyyyyyzyyyz{zzzzyyzxyyyyzzz{zzyyzyyyyyz{{yxz{zzyzyyyyzz{yyyyzzzzyyzyzyz|{{z{z{yyzzzyyy{zzzyzzzzyzyzyyzzz{z{z{zyzzzzzzz{{{zz|{|zzzzyzzz{zzyz{z{zzzy{yzyz{{z{|{{zzzzzzzzy{{z||{zzzzzyy{zzz{{z{{{{yzy{zz{{{z{{{{{{yyyzyz{yzzzzz{zz{zzzzzyz{{{z{zzzz{zzyyz{zzzzyyzyyyxyyxzxzzzzyzzyywyyzyxyyzzzz{zzyyyyyyyyyzzzzzzzyzyyyyyxzzzyxzyzxyzyyyyzz{yyzzzzyxxzzxzzyzyxyzyyyzzxyzyyzyzyzyzzyyxxxxyyyzxzzzyyxyyyyyyyzzyyzzzyzyzyxxyyyzyzzzzxyyyyyxyz{z{xz{zyyyyxyyxyyzyyzzzzzyxyzzyyzyzzzzyyxyxyyxyyyzzzzyzyzyyzyyyyzzzyyz{yyyzyzyzzyzyz{{zyxzxyzyyzyyzy{zyzyzyzyzyzz{zzz{zzzzyzyyxz{{zzz{{zzyzyzyzzzz{y{zzzyyyyyyzzzzzz{z{zyzzzyzyzzzzy{{{zzzzzyzyz{{yzzzzzyxzzzzy{{zz|{zzzzzyz{zyy{z{{{z{{zyyzzzz{{z{z|{{|yy{zzzzz{{{z{{zz{zzzyzzz{{{{z{{{{zzzzyzz{{yzz{{zzzyzzzzz{y{z{{zzyzzyzyzz{{zz{{{zzy{zyzyzzy{zxyyxyxxyyywxzyyzzzzyyyxyyzyyzyzzzy{yyyxyxyyzyzyzzzzzzyyyxxxzyzzyzyzyyyxyxyxyyzyyzzzyyyxyyyxy{yxyzzyyyyyyyxxyyyyyzzyyxyxyyxyzzyyyyzyxywxxyxyyyzzzyzzzxxxzyyyzyzyzyzzyyxzyxyyyyzzyyzzyyyyyyyyxzyxyyzzyxyxyxyxyy{zyyzyyyyyzyyyyyyzzzzzyxyzzyyyyzyzzzzyzyyzyxzyzyyzz{yzyzzyyyyyzyzzzzzzzyzzzxyyxyzzz{zzzxzyyzzyz{zyzz{zzyyyyyyyyzzyyyzzxyyzzyyz{{zyzz{{yzyyzzyy{zz{z{zzzzyzyzzyz{zzz{{zzzzyzyzyz{yzzzz{zzzzzzzzz{zz{{z{{yzzzzzyzzzz{z{zzzyzyzzy{zz{z{|{{yyz{zyz{zzz{z{{zzyzzzz{z{z{z{{{yzyzzzzy{zyzzz{{{xyzyzyzzzzzz{{{{zyzzyyz{{zzyyyzyyyxzyyxyzzyyzz{yyyxyxxyxyyy{z{zzyzxyzyyyzyzyz{yzyzyyxzxzzyzyzzyyyyxxxxxzzyyzzzzyyyxyxxyyyzxxzyyzxyyyyyyyyzyzyyyzyyxxxxxyyyyyzyzxxxyxxyyyyzzzyzzyxyxxyyyxyyzzzzzxyzywyxyxyyzzzzzzzxyxyyyyyyyzyzzyyyyxyxyxzyyz{zzyyxyyyyyyyzyzzyxzyyxyxyxzzyyzyzyyy{zyyzyyyzzzz{zyxzyyxxx{{yzzzzzzyxzzyyyy{zzz{zyyzzzzyyyyzzzyyzzyyyyyxyxyzzzzzz{yzyyyzzy{{zzzz{{zyyzyyzyzyzzz{z{zzyzzzyyzzz{z|z{{yyzzzzyz{zz{z{zzzzzzzyzz|zzz{{{|zzzyzzyz{z{z|{{{x{zzyzy{zzzzz{{zzzyzzyz{z{z{z{{zz{zzzzyzz{|{{{{zzyyyyyzz{z{z{{{z{yzzzzyy|{yy{zzyzzyxyyyzz{yzzzyzxxyyxyyyyyxyyzzyzyyyxyyzzyzy{zyyyyyyyyyyyyyzzzyyyyyyyxxyyyzzy{zyyyxxzxyzyzzyzy{yyxyyyyyyzzyzzy{yyyyyyxyxyyxyzzyxyyxyyyyzzzzyyzzyxyyyxyxyyzyyyyzyxzyxzxyzxzzyzzzyxzzxxyxyzyyzyzyyyyyyxyyzzyyxzzzyzyyxyyzyzyyxzyzyzxyxyyyyzzyyyzyyyyyzyxyzyzyyyz{zzzzyxyzz{yyzzy{yxyyyyyyyyzzzzzzzyyxyyzyy|{zzzzzyyyzyyyyzzzzzyzzyyyyyzyyyzzy{zzzyyyzzzzzzzy{{{zzyyzyzzzzzzy{zz{{zyyyyyxyz{zz{{z{{zzyyzxzzz{{{{{{zzyzzy{zzzzz{{{{{zyzzyzz{zzz{{{z{z{zzyzz{z{{{{{zzzyzzyyy{{zzzz{zzzzxyzzzzz{zzzz{{yyyyzyzz{zzz{zzzyyzzzyzy{z{{z{zzzyyzxzxzzzz{zzyyyxyyxxxyyzyyzxzzyyxzywzyyzyzzyzxyxyyyyyyyzzzzzz{xyyyyyyzyz{yy{zzyyyyxyyyyyzyyyzzyzyyyyxyyzyyyzyyyyyyzxyyyyyyyzyzyyyyxyyyzzyzyyzyxyxyzzxzzzyzyzzxyxyxyyyyxzxyyyzzzzyyyyxxzz{zzzzzyyyzxyyyyyzyyyzyyzxxyxxyzyyy{{zyzzxyyyyxyyzzzzyzyyzyyyyyzzzzzz{yyyyyzyyyy{zzzyzyzyzyxzyyzzyzyz{zyzyzxzzy{{zzzz{zy{yyzy{yzzzzzzzyzyyyyzzzz{zz{{zzzyyzyzzz{zzzz{yyzzyyyyzzzz{z{z{{xyzyyyzzzzzzzzz{yz{yyzzz{zz{z{y{zz{zzz{{zz{z{|z{yyzyyyyz|{{{{{{{yzyyzzz{{{z{z{{{zzyyzyzyzzyzz{{z{zzzyzzz{z{z{zzzyzzzzyz{z{zz{{z{zzzzzyyyzz{{zzzzyyxyyzzzzzzyzzzzxyyxyxyyzzzyyyyxyxyyxyyxyyyyyzzzyxyxyzyyxyz|zzzxyyyyyxyzy{zyyzzzyyzxyyyyzzyyzz{xyyyyyzxzzzzyzzyzyzzyyxyzzyxzzzzzyyxyyyyyyyzyzyyyxxxyxywzyyyzyzyzyzyzzyyxzzyzyyzyzzyxyyyxzzzyyzzyyyzyyyyyzzyxyyz{yyyyyyxzzyzyzzyyzyxyzxyzzzzyzzzyzyyyyyzyyzzzy{zzyzyxyyxyzzyzz{zzzzyyzyy{zy{zyz{zyyyyyzyy{zxz{zz{xyzzyyzz{zzz{zzzzzzzy{{y{yzzz{zyzzzzzyzzzz{{zzzyzy{yyzzzyzzzz{{zyy{zxyz{{{{{{z{zyyzyzzz{{z{{{{zzzzzz{{z{{{{{{{zzzyzz{{{{{{{||zzzyzzxyzzz{{{zz{|{xzzzyzzz{z{yzz{|zyz{yzz{zy{z{{{z{yyzzzyzz{yz{{{zzzzyzzzy{zz{y{zyzzzzxyyzzzz|yyyyzyxxzyyyzzyyxzzyyyxyyxyyzyyzyzzzyyyyyxxyyzxzzzzzxzyzxyzyyzzyzyzyyyzyyzyyyzz{zyzyxyxxyyyyyzyyzzzzyyyyxxxwyzyyzzzyzyyyyxyxzzyyyyzzxzyxyxxyyzyyzzzzyzyyxywyyyyzzyzxyyyyyzxyzzzzz{yyyyzyxyxxzyzyyyzyzyyyxzyyzxyyzzyyzyyyyyyzzzzyyzzzzyyzxyyyzyzyzzyyzyzxx{yzyzzyzyzyyyyxyyyyzyzzzyzyzzxzyyxyzy{zzzzzyyyyzyzzyzzyy|zzyyyyyyyyz{{zzzzzzyyzyzyzz{z{zzzy{xyz{zzz{zzz{z{{zyyzyyyzyzzzz{zzyzyzyzyzz{yz{{{yy{zzzzzz{{zzzyzyyyzyzz{zz{{zz{{zzzzzzzzy{zz{{{zzyzzzzzyz{z{z{{{z{zz{zy{{{zzz{{{zzyzz{yzz{zzyzzzzyzzyzzyzz{{y{z{zy{yyzyz{z{zzyyzyxyyyxyxyyyyyxyzxxzxyxyx{zzzzy{zyyxxyyyxyxyyzzyyyyyyyyyxzzzzyyzzyyxxyyyyyyyzyzzzyyzyzxywyyyyyz{xzxyxyyyxzyzyzyyyxyyyxxxyyyxxyzzyyxxxxxxzyyxyxz{yxyyxxyxyxyzzzyyzyyxyyxxxyyzzyzyzxyyyyxxxxyyyyyyyyyxxyyzxzyyyyzyyyzyzyyyxyyzyyyz{xyyxyyyzzzy{yyzzyzyyyyzyzxzyy{zzzzyyxxyxzyyyyyzzyzyyxxyyyyzzzzzyyzyxyyxxzzyzzzzyzyyyzyzzz{zzzzzz{zyyzyzyzz{zy{zzxyzxzzyyzzz{zz{zzxyyzyyyzzz{z{zz{zxyyyyz{zzzzz{{zzzyyzzzzzzzzyz{z{zyyzzzzzz{{{{|zzzzzzyzz{{z{z{zzyzyzyyzzzz{{{z{{y{zzyz{{{z{yzy|zzzyzyyzzyzzzyzzzz{yxzzyz{{{zyz{zyyyyyzyyzz{yyyzxyyxyyyyyzyyxyx{yxyyyxyyyzzzzzyzxyxyyzyxzyzzzzzzzzzyyyxyyxzyzzyzzyyxxxzxyzyyyyz{yxyywyyxyyyzyzzzzxyyxxxyzyzyy{yyyxzyyzyyyyzyyzyzzxyyyyzyyz{zzzzyyyyyxyyyzzyyzzzzyxyxyyyyzzzzyzzzzzxzyxyyyyxzzzzyyyxyzxxxyyzzz{zzzyzyxzyxzzzzyy{zzyyyyyyyyzzzzzz{yyzyxxyyzzzy{zzyzzyyyyyyz{zyyzz{zzyyyxyyzzy{zzzzzyywzyyyzz{yyy{yzzyyyyyyyzyzzzzzzzzyzyyyyzz{{{{{zzyyyyzzz{{{z{{{{yyzzyzyzzzzy{{{{zzzzyyzzz{z{z{z{yzzy{zz{z{zzz{|{zyzyzzzz{z{{|{{yzzy{yyyzzz{{{zz|zzz{zzz{zzyz{z{zzy{zzzz{{z{{z{|zzzyzyzyyz{z{{z{zyyzyyyzzz{z{zzzzy{yzxzyzz{{zyzyxyyyyxwxyyyzyyyzyyzyzxyyzyzyzzy{yyxxyzxxzzzz{zz{zyyzxzxyzyzzyzz{yyzzyyyyyyz{zzzzyyyxyyyxyzyyzzzyyyyyyyyy{yyyzzyzyyyyyyyyzyyzyz{yyzyyyxyyzzzyyyyzyyyywzyzyyzxzzzzzyzyyxzyzzzyyzzzzyzyyyxzzzxyzzy{yyyyyzzyyyzxy{zzzzzyyzyzzyyyyy{zyzyxyxzzyy{yyzzzzyyzzxzx{y{zyzzzzyyzyzxy{{zyz{{zzyyyzyyzyzyzzzzyyyzyzzyyzzzzzy|yzzzyyzyzzzz{z{{zzyzyzy{z{zz{{z{zxzzzyyzz{zz|{z{{{yzzzyzyzzzz{{{zzzzy{zzz{z{{z{|{zy{zzzzyz{{{z{{zzy{zzzzzz{{z{zz{zy{{yyz{z{{z{{|z{zzzzzzzzzzzzz{{zyzy{{zy{{z{{z{{zzyz{zzzz{z{{{|{zzzzzyzzzzy{zz{zzyzzzxzyz{z{zzzzyyxxyyzxyzyzyzzyyyyyxyxyyyzzzzzyyyyxyyyxzyyzyyyzyzyyxxyxyzzyyzyzyzzyxyyyyyzyzyy{yyxyxyzyzzzyyzzzyzxyyxyyxxyyzyzzyyyyyyxyyyyzyyyyyyyxyxyxyyyyyzyzzyyywyxyyxzyyyzyyyyyxyyyzzyzyzzzxyyxyyyyzzyyzyyyyyxxyxyxyzyyyyzzyxyyxyyxyzyyzyzyzyyyyxyyzzzzzyzzyyyyyyyzzyyzzzyzyzzyxyzyzzzyyzzzzyyzxzyxyzz{xzzzyyxxyzyyxzzzzzzzyyxyyyyxz{zyyz{zzzzzzzyzzyzzzzz{yzzy{xzyz{zzzzyzyzyyzzyy{{z{zzzzzz{yzzy{z{{{z{{zzzz{zz{yzzzzyzzz{zzzzyzyz{{{y{{{zz{zyyzzzzz{{z{{{yz{zyyz{yz{{z{{zzzyzzyyz{z{{zz{z{xzyzzyyzzz{zz{zyzyyzzxyyz{zz{yyyyyzyzyzzzzzyzyyyyyyxyyyzzzzzzzyyyyxxyxyyxyzyyzyyzxyyyxyyzzyyzzxxyxyyxyyyyyyyzyyxyyxxxxzzzzy{yzyxyyyxxyyzyyyyyyzyyxyxxyyzzyyyyyyzxxxzyxyyyzyyyyyyyyyyyyyzyyzyyyyyyxxyyxy{yyzyyyyxyyxywyxyyyyyzyzyyxyyxwxyyyzzyzyzxyzyyyyzyzyzyzyyyyyyxxyyyyzzzzyyyyxxyzzyyzzzzyyyyyyyzzyyzzyyzzzyzyxyyz{yyzzzyzzyyyyxyyyzzzy{yzyyzyyyyyyzzzyzzzzyyzzyzyyzzzzzyz|yzyyyyyyzyz{z{zyxzyyzzzzzzzzzzzyzyyyyyy{zzyzy{yzyyyzyzz{{zyzz{{yzzyz{yzy{zzzzzzzzyzyzyzyyzzy{{|z|yzzzzz{zzz{{{zzyyyyyzzyzzzz{{z{zzyyzyzzzz{zyzzzzyyzzyz{z{z{z{zzzzyzyzzz{zzzzzzyxxyxyzyzz{zzzzyyxxyxyyxyyzyyxyxyyyyxyxyzyzyyzzzxyyyxzyyzyzxyzzzzxzyyyyxzzy{yzyyyyyxxyyyzyzzyzy{yzzyyyyyz{yyy{zyyyzyyyyxzxyyyyyzyyxyyzwxxyyzyyzzxyyyxxyxyzzyxzzyywyyyyxyyyzzzyyyyzyzxyyyzzyxyyzyyxyyyyyxxyzyzyyyzxxyyyyxyyyzyzzzyyyyyxyyyyzzyz{zyxyyxzyyyzy{yyzzyyzyyyzyyzyzyzyzyyzyxyzyyyzzyzz{yyyyyyyzy{zz{{zzzyzyyyyxzzzzxz{zzyxyyzxyzz{zx{zzyyyyzxyzzzzzzz{{yzzyzxzz{zz{{{zzyzzyzyzyzzz{z{z{zxyxyzyy{zyzz{{{yzyyzzzzyzzzz{z{zyzyyzzzz{{zzzz{zzx{yyyyz{zzz{z{zyy{yzzzz{zzzzzz{zzyzzy{{{{{{{zzz{yyyyzzzz{{zzz{z{zyyyz{z{zz{{{z{zyyzyyzzy{zzzyzxyxyxyyyyzyyyyzzyxyyyyyxyyyzzzyzzyxyyyyxyyyzzzzyyyyyyxyyyyzzyzzzzxyyyyxxzyzyyyyzyyyxxyyxyyyyyyzyyyyyyxxyzz{xyzyzyyyxyxyyxyyzzzyzxwxyyxyyyyyyyzzzyyxyyxxyxyyyyy{yyyyxyyyxzyxyyzxzyyyyyxxyxyzyyzzzxyyzxxxyyyyyyzyyyyxyyyyxyzzzzzzyyzzxyyyyxzyyyzzzzyyzyzyyzyz{yyzzyxyyyzzyzzyzzzz{yyyyyyyyyzz{zzzyyxzyzyyyyzyzzzzzzzyyyyyyz{zxzyzyzyzyyzxzzzyzz{zyyyzzyzyyzzz{{{zzzyzyyzyzy{{zz{zzzzzyyyzz{zz{zz{{zzzyyyxzzz{zz{{{zyzzzzzyy|z{z{{zzzzzzyyzz{{{{{z{zyzzzyzzzz{z{{zz{zyzzzzzzzz{zzz{zyxyzzyyzzzzz{{{zyzzyzyyz{z{yzyzzzyyyxyzzzzyzzyyyxyxyyxxzzxzyzyzyyzyxxxyyyyyzzyzyyyxxxyyyyzzyzzyxyzxxyyxzyyzyzz{yyyyxxyxyzyzyyzyxxyyxywyyyyzzzzzzxyyyyyxyzyyyzzzyyyxxyxyyyyyyzyyxyyyyyyyyyzyxzzyxxxzyxyyyxzyzzyyzyxyxzxxyzyzyzzzyxxyyxyyxzyzyyyzxyxyyyyyyzyyzyyyxxyyxyyyxyzxzyzyyzzyzxyy{zzzyyz{zyzyzxzyyyzz{zyzyyyyyyyyyzzyzyzxyyyzyyxzz{zyzz{zyyzzyyxyzzzzzzzzzyyzzyxzzyyzzzzzyyyzyyyzyz{zz{zxzzzxzzzxyzyzy{{{zyzyyxyxz{zzz{{{zxyyzyzyzzzyz{}{{yzyzzyz{zzz{{{{{zyzz{yzy{{z{{{{zzyzyzyz{{z{y{zy{yz{{yyzzyzz{zz{z{zyzzyyz{zz{{{{zzzyzzzyzyyy{z|{zzzzyyyyyzzzzz{zzyzzyyxzzz{yyyyzxyyyxxxyyyzxyzyyzyyyxyyyyzzyyyzyyxyyyyzxzzyzzzyzzyyxzyyyyzyzyyzyzyyxxyyxzyxzxyzzxyzwyxyxyzyyyzzyzyyyxxxyyy{yxzyyxyyyyyxyyyyzzyxyxyzyxxyyyyzxyzzyxyyyxyxyyzyzyyzzzzxxxyyyyzyzyxzyyxyzyxyxyyyzyyzyyyxyyxyyyzyzyzzzyyyxzyyxyzyyyzz{yyyyzyxyzyyzzyzzyyyyxyzzzzyzyzzzyyyyxyyyyzzyyzzzyyyyyzyyyyzz{zzzzzzyzyyxyzzyyzzzzyyyyzxzzzyzz{zzyyyyyyyzzzzz{{zzzyzyyzzyzzzz{zzzyxyzyyyyzzzzy{z{zyyyzyzz{z{zz{z{yzzyzzyyz{yzz{zzzzzzzzzzz{{{zz{{{y{z{yzzzzz{z{z{zyzzzzz{y{zzz{z{zzyyzzyyzzzzz|{{zzzyy{zyz{zyzzzzz{{zyzyyyzz{yzzzyyyzyy{z{z{y{yzzzyyxyyxxyxyyzyz{xyyxxxxyyyxzzzzzxyyyyyyyzzyyyzzyyyzzyxxxyzzzz{zzyyyxxzyxzyyzyyyzzxyxyxyyyxy{yzyyyyyxyzyyyyyxyyyzxyyxxyyyzyxyzyyzyyxyywxxzyzzyzzzyxyyxyxyyzzyyzyyzyzyyyyyyzzzyyzzzyyzyyyyyyyyyyyxyyyxyyyxxyyzyzyzyzzxyyxyzzzyyzzzzzyyxxzyzzzyzzz{zyyyyzzzyzz{zzzzyyzyyyyzzzzyzz{zyzyyyxyyyzyz{zyzyzyyyyyzyzzzzzzzzyyzzzyzzz{zy{{zzzzyyzy{yyz{{zz{yzyyzzzz{{z{yz{zzyzzyzzyz{{y{zzzzyzzyzzzzzzz{{{{yzz{yzzzzzzz{{z{zyyyzxzzz{{|z{{{zyzyyyzz{{zz{{{z{zyyyzyyz{z{{z{{{{yzzxzz{{z{zz|zzyyzzzzzyzzyz{zz{zzzz{yyy{z{zz{zzzzyyyyxzzzy{y{xxxyyxyyxyzzyyxzyyxyyyxyxzzyxzy{yzyyyzxyzyyzyzzzzzyxxyyyyyzzzyyzzxyyyyyyxyyzzzzzyxxyxxyyyyzyzyzzz{xyyyxyyyyzyxyzyyzxxyyxyyyyyyzzxyxyxyyxyyyzzyyyyzxyxxzxyyyzyzzyzzxzzxxyyzzyzyzz{yyyyyyxwyzyzyzzyyyyyyzyxxzyzz{zzzzyyyzxyzzzyzzzyzyyyyxyyyzyzyyzzzyyxyxzyzyzzy{yzzyyyy{zyz{zzyzzzzzzzxyyxyyyzzz{yyxyyzyxzyzzzzzyyyyyzzyxy{yzyyzzzzyyyyzyyyzz{{zz{zyyzzzyyzzzyzz{{zyzyyzzzz{zzzz{{zyyzzyyzy{zzz{{{yz{yzzzzzzyz{{zz{yzyzzzyz|zzzz{{zyzzzyzzzz{{{z{{zyyzyzz{z{zzzz{zzzzyzzy{zzz{z{{zzzyyzzyyzzzzzz{z{zzzyyyzz{zzyzyzyxuzyyzyzzzzzzyzyyxyyyxxyyzzzzyzzxxyzyyxyyzzyyzyzzzxyyyxzy{yzy{zzyxxyyxyyzzzyyyyyyyyxzyyzyyzyzzzyzyxyzyxxyyzzzyyyzyyyxyyyyzyzyxyyzzyyyyyyxyzxyzyxyxyyyzxzz{xzzzzyyyzxxxzyyyyzzzzzyyxyyyxxzz{yy{yzyyyxyyxyyzyxzy{zyyyxyxzyzxzzzzyzyyyyyyyyyyzyzzzzyyyyyyyzyzyzzzyz{yzyzyz{yzzzyzzyzxyxyyyzzzyzzzzzzyy{zyyz{zyzzzyzzyyzyyyzyzzzzz{zzxyyyyzzz{zz{yzyzyyyyyzyzyzzzzzzyzzzyzzzzzzyz{{zyyzyxzz{z{zz{{zyyzyyyzzz{{{z{{z{zyzyzz{zzzzzzzz{zyzzzyyz{y{z|{{zyy{yzzyzzzzz{{z{zzyzyzz{zzzzz{{zzyy{zzz{{{y{{z{zzyz{yzzz{zz{zy{zzyz{zzyy{{{zzz{zyzyyxzzz{z{yzyyyyyxxxyyyyyyzyzyzxyyyyxxyyzyyzyzyyxxyyyzyyzyyyzzzyxyyxyxyzyyzyzzyxzywxxyzyzzz{zzyyzyzxyxyzyyyy{zyyyyxyzyxyzxyyyzxzyyxyxyyxyxyzzyyxyyyyyxyxzyyzzzyxyxyyyxxyzyzyxzyyxyzyyyyzzzyyzzyyzxyxyxyyyzzzyzyyyyxxxxyzzyy{zzyyyxyxxxyyzyyy{zyyyzyxzxy{yzzyz{zyzyyyyyzxyzyzzyyyyxyxzzzzzz{zzyyyyyzyyyyzyzyzz{zzyyyyyyzzzzzzzyzyyzyzyyzzz{zzzyyzyyyzzzzyzyy{zzzyzyyy{yzzzzy{z{|zyyzzyyzzzzzzzzzzzyyzzz{{{zzzzzzzzyzyzyz{zz{zz{{zyyzzz{zzzzzz|{{zz{yzyyz{zz{z{zzzyzzyzy{zzz{zz{zyyzzzzz{zz{{{{{zy{yzzzyz{zzy{zz{yzzyzzy{{zzz{zyyyzyzyzyz{{zzzyzyyyyyyxxyzyzyyzzyyyxyxyxyyyyzzzzzxzwyyywzzzyzzyzyxyyyzyzyzzyyzyzxyyxyyxxyyyyxyy{yyyyyxyxyzyyyzzyzxyyyyyyyzzxxxzyxyyyyyyxyyzyyyzyyxyyyxyyyxzzzyzzzyyyyyyyyyzzyzzzxyyyyyxwyyzyxzzzzxxyyxzxyzxyyyzyyyyzyxxxyyzzy{zyyyyyyyyxzyyzyzyzyyyyyyyxz{yyzyzzyyyzyyyzzyyzyzzyzyxzyyxyyxyyzzzzzzzyyyzyy{yzzzzzyzzzyyyyyzzzzzzyyyyyzzyyyz{yzzyzyyyyzyyyyzzzzz{{zyyzyzyyzzy{z{{{yyyzyzyyzzzzzz{yyzzzzxzyz{y{{y{{zzzyz{zyzy{{z{zz{yzyzzzzz{{{{{{{{zzzzyyzz{{{{{yzzyyyzzzzz{y{{zzz{z{zzzzz{z{zzzzzzyyyzzyzzzzzz|{zzzyyzzzzy{zzzz{zyzzz{yxzyzyzyyyyyyxxyxyyyzzxyy{zyyxxyyyyyyzyyzzyzzxyyyxyzyyzzxyyyyyyxyyyzzyyyzzzyzyxyxxyyyz{yzyyyyxyxxxxyyzyyzzzyyyyyxxyzyzxzyxzzyyyxyyxyyyyzyyzxyxxyyzxyzyyyzzyyyyyxywyzyy{yzyzyxyyyyyxyyyyyyzyyyyyyxyxyzyzzzzzyzxyyxyxyyyxyyzyyxyxyyyxyyyzzzyyzyxxyxyyzyyzyyyzyyzxyzzzzzzyyz{zyyzyyxyyyzzyzzzyyzyzzxzxzzyyyzzyzxxyyxyyzy{yzz{zyyyyyyxy{{yyzzzyzzyyzyzzyzzzz{z{yzzyzyzyzzyzzzz{zyzzyyzyz{zz{z{zyzyzyyzy{{{z{y{{zyyzzyyyyz{z{z{{{zzzyzzyz{zz{y{{{zzzzzzzzz{{zzzzzyyz{yyzzzzzzzzzyz{zzyzyzz{z{z{{yy{yzzyzzy{{z{{{z{yzzzzzzyy{z|zzzzyyzzyyyzz{yyyzxyyxyxyyyzyyyyxzyyxyzyzxzyzz{yyzzyxxxyxyzzyyyyzyzyyyyyy{yyyzxy{zyyyyxyyyyyzzyzzzyxyyyxxyyyyzyzzyyyyyxxxyyyyyxyzyyyyyyyzxyzyyyzzyyyyywyxxyyyxyzzyxxxzxzxyxyzxyzxyyxzxxyyxzzyzxyyyyyyyyzyxzxzxyyyzyxxyyyxyyyzyyzzzzyyyyzxyyyyzzyy{zyzxyyxyzzyzzzzzzyyzyyyyzyzzyyz{xxyzxxyy{yzzzzzyyxyz{zzyxzzzyzyyzyyyzyyzyyzzzy{yzyxyyzzyyyyzzzyz{yzyyyyzzzzzzzzzzyzyzyyy{yzzxz{{zzzzzyyy{{z{z|{zzyzzyyzy{{{{zz{zzzyyzzyz{z{z{{zz{xzyz{zyzzz{{{|{{zzz{zyyz{zzz{{{zyzzzzyzz{z{zzz{{zyzyzyyy{z{z{{|zyzxzyyz{zzzz{{{z{zyzyyxzz{zyz{zyzzyyxyzzyzy{zyzxyxxyzzwyzyy{yzzyyyyyyyyzyzyzzzzzxzxyyyxzyzyyyzzyyzzyyyxzzzzyzy{zxyyyyyxyzy{zzyzxyzyzyyxyzyyzzzyyxxyyyyyzzzyyzzzzyyxyyyzyyxzyzyzyxzxxxxxyxzyyzyyxyxyyzxxzyyzzzyzyyyyyyyyyyyzzyyzyyxyxyxyxyyyzyy{zyyyyyxxyzyzyzzyxyzyxzzxyyzzzy{zxyyyzyyyyzzyyzzzzzzyzzyyyyzz{zzzxyyyxyxxyzzzyzzzzyyxzyyzyyzyz{zzyyyyzyxzyzyzyzz{zzyzyxyzz{zzzzzzzyzzzyyyzz{zzz{{zyzyzzzyzzzzzz|zzzzyzzyyy{y{zz{yzyzyzyyyz{zzzyy{z{yzzzzzzz{zzzyz{zyyzzyzz{z{{|{z{yzz{yzyyzzzz{zzzyyyzzzzzzzz{zz{zz{zyzyz{zzyz{{zyzzzzyyyzz{{z{{{y{zyyyyyzzz{zyzzzyzyzzzyzy{yzyyyyxzxxxyxyyyxyxzyzyxzwxxyyyyzy{zzzyyyyxxxyyyxzzzyyyyyxyxyyyyzyyyzyzxwyxyxyzyyyzzzyyyyyyzxyzyzyyyzzyyxxxxxyyyzyyyyyyyyxyxyyyxyyyzzyyxyxyxxyzyyzzyyzyyxwyxyxzzyyzyyzxxyxyyyyzzyzyzzy{xxxxxyxyyyyzzzyyzyxyyxxzyzyyyzxxyxyyyyyzzyzy{zyyzzyxyzyzzz{zzyxy{xyxzyzyzz{zyzyzyyyyzyy{zzzz{zyxyyyyyyyyzyzzzzzyyzyyyyyzzzzz{yyyyyyzyyy{zzyyzyyyyyzzzzyyy{zzzzyzyzzyzyzyzzy{{{y{zzxyyyyz{zz{zz{yyzyzzy{{|z{{zzzyzxyzzzy{zz{z{zzzzzyzyzz{z{zzz{{yyyyyzzzz{|{{|z{zzzzyyzyzzzz{{zzyzzzzy{{|z{zzzzzzzyyzyyzyz|{z{zzyyyyyzyzzz{zzz{zzzyyyyyy{zzyyyyyxyyyxyxyyyyyzyyzyyyyxxyzyyyyzzzyyyxxyyxzyyzyz{zyzzzyxyyzyzzyyzzyyxxyyyxyyzyyzzzzxxyxyzxyywyyzyzzyyyxwxyzyzyxzzzyyzxxyxxzyy{yzzzyyyyyxxyyyyyzx{zyyyyxzxxyzzyyyyzyyyxyyxxxyyyyyzyzzxyzyxyyyyxyzyyyyzyyxxyyzyyyyyyzzyxxzyxzyyzzzzzyxyyyyzyzzzzzyzyyyyyyyyyzyzyyz{yyyzyyyxzzzyzzyzyyyyyyyyxyyyzzzzzyzyxzyyyyyyyzyzzzzyyxyxyyxzzyzyzyyyyzyyzyzz{{yz{yxzyzzyyzzyzz{{{yz{zyyyyyzzz|{{{zxzyyyzzz{z{zz{{zyzzzzzyz{z{zz{{zzzyyzzyzz{zz{{zzyz{zyyyz{zzzzzzzyy{zzzzyzzz{{{{{yzzzzzzz{z{z{z{zyyyyzxzz{z{z{{zzzyyzzzxyzz{zzz{zyzyyyzyzzyy{yyyyyxxxzyxxyyzzyyzyyyyyxxxzyzzyzyzyxyyzyyxyzyyyzyzzxyyyyxyyyzzyyzzyyyxyyxyyyyxyzyzzwyxxyyxxyyyzzyyyzyyyyyyzxzyyzy{xyzzyyxyyyxzyzzyxyyyzxxxyyyyyzzyyyyxyyxxyyzyyyzyyzzyyyyyyyxzyy{yyyyzxyyxzyyyyyyyyyyxyyyyyyyyyzzzyyyyzyywyyzxyyzyzyyzzxyzzyyyzyzzzyyyyyzzzzzyzyyyyyxyxyyyyyzzzzzzyyyzyyyyyzzzzzyzyxzyyyyzzz{zyzzzzzxzyyxyz{zyzzzzzxyxzyzyzzzzyyzzyzyzyy{yy{zzz{{zyzyy{yxzzzzzz{zzzy{zyyyyz{zz{z{{zzyzz{zzzzz{z{|z{y{yzyyyy{zzz{z{{zyyyzzy{zz{z{zz{yyzyzzz{zzzzzzzz{yzyyzzzz{zzzz{zy{yz{zyz{{zz{zzyzzzyzzyzzzzz{{{yz{xyxy{zz{yzzyyyzyxyyxyyzzxyzzzyxxyyxxyyzyz{zzzzzyxxxzyzyzzzy{zyzwyxyxyyyzzzyyzyzyxyyxyyzyyyzzzzxyyxyzxyzyyyzyyyyyzyyxyzyzyyzyyyyyxxyzyyyxzyy{yyxyyyyxwxzzyzy{yzyyyyyxyyyyyzyyzyyyxyxzxyzzzyzyyyyyyzwyxxzzyyyyy{yyxyyyyyzyyzzyyyyyxxyyxzzzyzyzyyyyyyyyyzyzyzzzzzyyyxyzzyyzzyzyzyxyzxyyyzzzzzyzzzyyxyxzyyyzyyzx{yyyyyyzzyzzzyzzyzzyyyxyxzyzyyzzzyyzyzyxz{yzyzzzzyzzzzy{zz{yzzz{zyzyzxxyyzzzzzz|zzyzyyzzy{zzzz{zzzzyzyzzzzzzzzz{{zzyzzzzzz|{{{{{z{yzyyzyzz{zzzz{z|zzz{zzzzz{zz|z|{zzyzyzz{zz{{z{{yzyyzz{yz{{{zz|zzz{zyyx{z{z{zz{{zyyzzyyyzzzyzzyyxxxyxxywyzyyyzyzyxxxywxxyyyxyzzzyyxxyxxyzyxyyyzyyxxyxyyxyyzyyxyyyxzywxyxyxzzzyyzyzyxyyzwxyyyxzzyxxzxxxxxxyyxxyyyyxyxxyyyyyzzyzxyyyxyxyzyyyyyyzyzyxxyxxxxyyzyyzzyxxyxxyxyxxyxyzxzxxyyxzyyyzyyzyxzzyyxyxyxyyyxy{zyyyxyyyyyxzyzyyzzzzyxyxyxyyzyyyy{zxyyyxyyzyyzzzyyyxyyxyxyzyzyzyzyxyzzzyyxy{yy|zzyyyxyyxyyyyyzzzyzxyxyyzyyyyyyzzzzzzzyyxyxzyzzzzzzxz{yyyyyzzzzy|z{zyyzyzyyyzz{zzzyzxyyyyyyz{yy{{z{zyzyzyzzyyzz{zz{{zzyyyyzyzzzzz{zzyxzyzzyzzz{yy{z{z{zzyyyzzzzz{{zzyyzyyzzzzzzz{z{yyyyyzyyzzzzyzzz{zzzyyxyy{zzzyyyzyzyyxyyyy{zy{yyzyxyyxyyz{zzyyyzyxyyyxyxyyyyy{zyyyyxyxyyzyyzzzyzyyzyywxxzyyzyzyzyyyxxyyxxyyyzzy{yxyxxyxyyzyyyzzyzxxxyxxyzyzzxzyyyyxwzyxyyyyyzzyyxyyyyyxyyzzzy{yzyyxzxyyyyzyzyzzyzzyzyyzxy{yyyyyzyyyxxxywyyyzyzzzyzyxxxyyyyzzyyzyyxyyyzxyyyzyyzyzyyzxyyyyyzzzyy{zyyyyyxzyzy{yyzyyyyyxyyxxz{zxzy{yyyyyzxyyzzzzy{yzyyyxyyyyyzzyyyzyzxzyyyyyzzzzzzzzzyxyyzzzxzz{zz{zyxyzy{zyzzz{zzyzyyzyyyxzzzzzz{{zyzzyyyzyz{zzz{z{zzzzzzzzzz{zzz{{zzyzzzzyy{zz{{{{{z{zyyzzz{zzy{{{zzyz{yzzz{{{{zz{zzzzyzzzzzz{{zz{yzzzyzzzz{{zzz{z{zyxyzxyz{yz{yz{x{zyxzzyzz{zzzyzwxyyyxxwyzzzyyzyxyyxyyxxxzyzzzzzyyxyyyyyzyzzyyzzyyyyyxxxyyzzxyzzyxywxyyxzyyyzyzzxxxyxzyyyxyxzzzyyyyyyyxxzxyyyzyyzxyyyyyyyzyyzxyyyyyxzyxyxzyzzyzyyxyyxxxxyyyyzyzzxzxxxxyyxyyyyzzzyyyyyxyyzyzxxyyzyyzyyyyxxyyzyzzzyyyyzxxxzyyzxyzzzzxxyyyyzyzyzzz{zyyyyyyyyzyzyzy{xyzyxyxyyyyzzzyzyyyzzyzyy{y|zzyyzxyyzyyxzzzzzz{yzyyyz{yyzzzzy{zyzyyzzzyyyzyzzzzzzzzyzzxzy{y{zzzyzzyxzyyyz{y{zzz{zzyyzyyz|zzz{{{{zzyxyzz{zzz{z{zzzyyzzzyzy{{{zz{{zz{zzzzz{z|{zzz{zyyyyzyzzzzzzz{|{zzyzyxz{yzzzzz{zzzyyzzzy|y{z{|{zyzzzzyy{yz{zzzzyyzyzyzz{y{zyzyxxyyxxyxwyyyzzyzzyxxyyxyxyzyxzz{yyxzyzxxxzyyzyzzzzxxyyxxwyyzyyzyzyyyyxxyyyyzyzzzyyxyyyzyxyzzyxzyyyzyyyxyxyzyyyyyyyyxxxyyxyxzzxyzyyyxyyyxxyyyyyzzyyyxyxyyyzyzyyzyyzxyxyxyyyxyyzyzyyxyyzxxyyzyxy{zyyyyxyyxyyyzyxyyyyyyyzyyxyyyzyyzzzyxxyyyzzz{zzzz{{yyxxxzyyzzzyyzzyyzyxxyyyyyyzzzzyyzyyxzyyzzzy|zyyxxxyzyxyz{yzyzzzyyyyyyzy{{zyzyzzyyyzyyy{yz{z{zzyyyyyyzyzzy{yz{{yzzyyyyy{zzzyzzzzxzyyyzy{{zzz{{{zyzzyzzzzzz{z|{{{zzyyzzzzz{{{{|z{yzzzzzyxzz{zz{z{yxz{yzzzzz{{{z{{zzz{z{z{zz{zzzzzzzxyyyzz{zyy{{{{yzyyyzzz{z{z{z{zzyyyzzyzzz{zzyyyyyxyxyxyyzyyzzzxzxyyxxxyzzzyzzyyyyxxyxyyyyzzzyyyyzyyyyyyyzyyyyzyyyxxyxxyzy{yzyyyyxxyyxxxyxy{zzxyyyyyyxzyzyyxzyyyyzyxyxyyyyyxzzzyyyyxxyxyzyzzzzyyxyyyxxyyyyyzyyyyxyyxxxyyyzyyyzzzxyyxyyxyzzzxyyzyyyxyyxxxzyzyzzzyyxxyyyxyzyzyz{zyxyxxyxyyyyyyyyzyyyyyyyyyyyzy{zyyyzyxyyyyzzzzz{yyyyyyyyyyzzyzyzzzyzyzyxxzyzyzz{zzyyyzyzy{yy{z{yyyyyzyyyzyyz{z{zzyxyyzyyyzzzzz{z{yyzyyzyyz{zzzz{zzyzzyzyyzzzzyz{yzzyyyz{z{{yzz{z{{zzyzzyzz{zz{{{|zzzzyyy{{{{zzz{{zyzzyzyzzzyzzy|zz{zzzyzzzzz{{{zzzzzyyyyzzzyzzz{zzzyzyyzyyz{z{{{{yzzzyyyyyzzyzzzzzyyxyxxyyyxyyyzzyyyyzyxyyyyyzyzzyzyyyyxyzzyyzz{yzyzxzxyyyzyzy|{zyyyxyxyzyyzzz{zzyyyxxxyxyyyyyzz{zzyyxxxyy{yyyzzzzyxyyyyxyyzyyyzzyzyyyyxxxyzzzz{yyyyxyyxyzyy{zyyzzyzyyywyyxzzyzzzyyyyyyyyyyzyy{zzyyzxyyyyxzyzyzyyzyyyyzyzzzzzyzz{zyyyyxyyzy{zyzzzzzzyyzzyzy{zzzz{yzyzzyz{yzzzzyzzzyzzyxyzz{zzyzzzyyzyzyzyyzzzzz|zzyzyzyyyzzzyyzzz{y{yzyxzzz{{z{{yzzzyzzzzzzzzzzz{zzyzzyyzzy{{y{{z{yzyzzyy{{{{zzzzyz{yyzzz{{zz{z{{z{zzzzyyz{z{{{{{zyzzz{zy{z{zzz{zyzzyzzyz{{{zz{{{zzz{yzyyzy{z{|{{{yzyzyzyz{zzzz{zyzz{zzzy{zzzzz{zzzyyzzyyz{{yzzyyyyyxyyyxyzyzyyzzyxyyxyxyzzyxyyyyyyxyxxzyzyyyyyzzyyyyyxxyyzyzyyyzxyyxxxyyyyzzzyyzxyyyyyyyzzyxyzzyyyyyyxyyzxzyyzzzzyxyyxzyyyyzyyxzxxxyyyyxzzyyyzyxyyzwxyxxzyyyzzzzxyyyxzxxxzzyyyzyyyyyyxyyxyyyxzzyyyyxyyxxzzyyyzzyyxyyzzyyyzyyyzzzzyzyyyyzyz{zzzz{yyyyxyyyzyzzzyzzzyyxxzxxyzzzzzzzyxyyzxyyyyzzzzyyzxxyyzyyyzzzzyyxzyyyzzyx{{yyz{zyzzyyzzzyzzy{yzzzyyzxzzyyzzzzzz{z{zy{zyyz{zz{zz{{zzyyxyyzz{{zzz{zzyzzzzzyyzz{z|z|zzyzzzy{zz{zz{{{zzzzyyzy{z{zy{{yzyzzzzzzz{z{zz{{zzyyyzzzz{z{z{zzyzzyzzyzyzzzz{z{{{yyzyzzzzz{yzz{yyzxyyyyy{{zyzyxyyxxxwxyyzzyxzyyzyyxxxyyzyzyyyy{zyxxxyxxyyyyzyzzyyxzyxxyyzzyyyyyzyzxxyzwyxzzyzyyzyyyyzxxyyyyyyzz{yxyxxxxyyzyyyzyyyxxxzyxyxxyyzzzyyyyxyxyyxyyyyzyzyxwxyxxyyyyzzzzyzyyxyxxxyzyzy{yyxyxyyyxxyyzyyzyyyywyxyyyzxzxzyzzxyyyyyxyyzyyz{zzyyyyyyxyzzyyzzzyyyxyyzyyzyyzyzzyyyyyzxzyzzzzzzzyyyzxxyyyyyzy{zzyyyyzyyyyzzyxz{yzyyyyyyzzz{xyzzzzzzzyyyzzzy{zzz|xzzzyyxzz{zzzzz{zyyzzzyyzzzz{zzzzyyyyzyyy{z{{z{{y{yyyyzzyzz{z{zzzyyyz{yyzzyzz{z{zyz{zzzyz{zyzzzz{yxyyzzzyzzzzz{{zzyzzzyzz{zzzyzzzyzzzzzyxzzz{zzy{yyzyz{yz{zzzy{zzyzzzyzyzz{z{zxzxyzyzxxxyyyyyzyyyxyyyyyxyyzyzyyz{yyyxxyxyyzyyzzyzxzxzxyyyzzzyyzyzxyxxyywyyyxyyy{yxyzyxzxyzyzzzzzzyyyyyxxyyz{xyzzxzyxyyyzyzyyzzzzyxyxzyxxzzzyzzzyyyyyyzxyxzzyzz{zyzxyxwxyzyzxyyzxyyyxyywxxyzyzyyzxyyxyxyxxyyyyzzzyzzxyyyxzzzz{yzyyyyxzxyzzz{zyzzzyyzyzyyzzzy{z{yzzzyzyyyyzyzzzyzyyzyzyzyxzyyyz{zzyyzyzyyxyzzzyyzzyyyyyyxyyzyzyzzzzzyyzxzyzz{z{z{{xzzyyzyyzz{zzz{{yyyyzyyyz{zzzzzz{yyzzy{yzz{yzz{{{zzzyzzyzz{zz{{z{xyzyzzz{{z{zz{y{y{yyyzyy{zzz{z{zyyzy{y{z{z{z{{{z{yyzzyy{zzz{{{{yz{xzyyyyzzyz{{zzzzzzy{zzz{zyzyz{yzyzzzyyzz{zzyyyxxxyxyxy{zzxy{yzxyyyxxyzyzzzzzy{yyxyyzxzyyyzyyyzyyyyxyyyzyzzyyzzyyyyxzyyyzyzzzyyyyxxyyxxyyyzzyzyyyxyxyyyyyyyzyzyyxyxzxxyyyzyzzyxxxyyyxyy{yyyyyyyzyyyyxwyzyyzzzyyyyyyzyxyzyyzzzyyyyxwxyyyyzyyzyzyyyyxyyyyzyxzzyzyyzyyyyxyzyzzzzzzyzyzyyzyzyyyyzzyyzzyyyyzzyzzzy{yyzyyyzyyzzzzzzzzyyyyyzxzyz{yzyzzxyyxxyzzzyyyzz{yyzyxzyyzzzz{{zyzzyyzzyz{zz{{zyzz{{zyyzzyzy{{{{zzzyzzzxyzy{zzz{zzyyzzyzy{{zzzz{{{y{zzz{{{zz{|{z{zyzzy{zyz{{{z{z{{zzyzyzz{zzz{{{{{zyz{zyzz{zz{z{|{yzyzzyzz{zzz{z{zz{yzxzzz{zzzz{{zzyzz{zzz{z{zy{zzzzzzxzzz{z{zzyzyxxxyxyxxyzzxyyyzyxxyxxyyzyyyyyzyyyxyxyxyzzz{{zzzyxyxyxyyyxzyzzyyyzyxxyxyyyyyyzyzyyyyyyxyyxyyzyyyyyyxyyyyzzyzzyyyxxyyyyyyxxzzzzyyyyyyyyxyyzyyzzyyyyyxyyzxzyyzyzyyx{yyyxxyyyzzzzzzyyyyxyxyzyxyyzyxyyyyxwxxzzyyyyyyxzyyzzxyzzzyyzzyyxyyxyyyyyzyzyzyyyyyyzz{zyyyzyzyyyxxyyyy{zyyzzzzzyyzxyyyyyzy{yzzyyzzyyyzzzzzyzzyyyyyyyyzyzzz{zzzxzyzyzzzzz{zzz{yyzyyyzzzzyzz{{zxyzzyxzyzz{|z{{zyyzyzyzz{{yzz{{{yzyzxzzz{{zzzzzz{yzzxzzzzz{{zzz{{zzzzzzy{zz{zzzzzzzyzyzyzzzzzz{|{zzyzzyzz{{z{zzzyzzzyzzyy{{z{zz|zzzyyyyy{zz{{z{zzyyyyzxxzz{z{zzyywyxyyxxxyyxzzzzyxyyxxxxyyyyyyyzyzxxxxyxxzyyyyyyyyxyyxyyyzzyyyzyxyxxxyxyzyyzyzyyxxxxyxyxyyyyzyyyyxxxyyxyyyyxyyxyxxyyxxzyyzzyzyyyxxxxywyzyyyyyyzyyyywxxyyzyyyzyzzxyyywxzyyyyxxyyzyyyyxyyxxyyyzyyyyyyyywxyxzxyzyzyyxyzzyyyyzyyyzzyyxyyyyxxyzyzyyzyyyyyxxyyyyyzzyzzzyzyyxyyzzyyzy{{yyzzzyyyyyyxyzyyyyyyxyyyzzzzyzzzyyyyyyyyzzzyzyzyzywwzyzyy{y{{{{zxyyzzzzzzyyyzy{{yyzzyxyyzzz{zz{zzyyzzyzz{{zyzz{yyzzyzzyyzzy{zzz{{z{yyzyyz{z{z{{{zyzyyyyyzyzz{zzyzzyyzzzzzzzzz{{{zyyzyzzyz{zzyzz{{yzyyyyyzyz{zz{{zyyyyyzyyzzzzzzzzyzyz{zzyz{zzyyyzzxwxxwxzyyyyyyyyyxxyxxyzyzy{yzyyyyyyzyxyzyyzz{yyyyyxyyzyzyxzyyzxyxx{yyyxzzyyzzzyyxyxwwxyzyyyzyzyyzyxxzyyyyxzzzyyyyxxyxzxyyzyyyzyxyyxxzyyzxyyzzxzyxxyxyyzxzy{zzyxxyyyxyyzzyyyyzzyyyyzyyyxzxyyzzyxxyxxyyyy{yyyzzyyyyxyxyxzyzyyy{yzzxxyyyyxzzyzz{zxyyyyxyzzxzyyzzzzxyyxyyxyzzxyzzzyxyzyxxyxyyzyzyzzyyyxzyzyzzyzzzzzyxzzyyyz{{zzzzyyyyyzzxyyzz{yz{zzzyyyyzyzzzyz{y{zyzzyyzzz{zz{{zzzyyyyyzzzzyzz{z{zzzzzzzz{{{zz{zzzyyzxzzyyzzzzzz|zzz{yyzz{zzzz{{zzyyzzyzz{zz{zz{|zyzz{y{zzz{yz{zzyzyyzyyz{yzzzz{|zzyyxyzzz{{{{zz{zzyyxyyyzzzzzyyyyxxxyxyyyyyyzyyzxxyyxxxyzyyyzzzzyyxxyyyyzxyzzzyzzxxyyzxyyyzzyzzyzyxxxxyxyyzzyyzzxyyyyxyyzzyyy{zzzyyyzyxyyyzyyzzyyxxyxzxzxyyyxyyzyxwyzyxyyyyyyzzyxyxyyyxyyzzxyyyxxxzywyxxyyzyyzyzzxxxyxyyzyyyyyzyyzyxyyyxyzyyyyzzyxyyyyxxzyzxz{zzyyyxzyxyzzyzzzzzyxyyzyyzxyzyzz{{yyyxxxyyzzxyzzzzzyyyyyyyzzyzz{zzyyyyyyxxyzzzz{zz{yyyyyxzzyzz{zzzzxyyzyzzyzzzzz{zyyyzzzyzzz{zzzzyyzyyzzyzy{{zzy{yzxyzzyzz{{zz{z{zzyyyzyyyy{{{{{|{zzzzzzxzzz|zzz{z{zzzzzyz|zz|zzzzyyyyyzzyyzzzy{{zzzyyzyzz{zzzzz{|{zzyzzyyy{zzz{{{{zyyyzyyyz{zz{zzyyzyzzzz{zy{zzyyyxxxyyywxyxxzyyzyyyxyyxxyyzyyzy{yyxyyxyxyyyyzyzzyyyzyyxyyxyzyyzzzyzyyxyxyxzyzyzyyxzyyyxyy{yyyzzyzxxyxzzxzyyxyyyzyyxzyyyyyzyxyyzyyxxxyxyxyyxyzyzyyxxywzwxxzyyyyyzyxyyyxxxzyzzzzzzyxyyyyyxwyyyyyyzzyywyxyyyyyyyyzzyyxyyxyyzyyzyyzzzzyyyyyzzzyzyyzyyyyyyyyyzyzzzzyzyyzyyyyyyyzzzzzzyyyxzxyyyzzzyzzzyyyyxyyxyzz{yyzyyyyyyxyxyzyyzyzzyyyyyzyzzyzzzzzzxzzyyzzzzzzyzz{zyyzzyyzzz{{{z{zzzyzzzzzzzzzz{{z{yyzzzyz{zyyzz{z{{yzzyzyzz{z{z{{|{zy{zzyzzzzzz{{{zyyyyzzzzzzzzz{|zyzyzzz{zzz{{{z{yzyyzzyyyzz{zy{{zyzyyyzxzzy{z{{zyzzyzyyyzzzzzyzyyyyxyxxxxzyyyyzyyyyyyxyxzyyyyzzzyxwxxyyyyxyzyzyzyyyxyyxyyyzyxyyyyyxxyyxxzyyyxyyzxyxxyzwyxzzxyyzyxyyxzxxxzyyyyzzzyyxyyyyyyxyyyzyyyyyyxxyyxyzyxyyyyxxyxxxxyyyyyyyyyxyyyyxyyyzzyxyzyyxxyyxxyyyyyzyyxyxxyxxxyyyyyzzzyxyxyyxxzyyyyzzyyyxyxyyyzyzzy{yyyzxyyyyxyzxyzyzzyxyxxzyyzyyzzzyzyxyyxyxwy{zzzzyzyyyzxyyyy{z{zzzyyyxyyyyyzyzzyzzzzyyxxzxyyyzzzzyzzyzzzzyzyzzzz{y{zxyzyyyyzzzy{z{z{zyyzzyzzzyyzz{zzyxyyyzzzzyyzz{z{zyzyzyyz{zzyz{{yzyyyyyyz{yzz{{zzyyyzzyzyzzy{y{z{yzyyzy{zz{zzzz{yyxyzzzyzzz{z{{z{zzzyyyx{zzzzz{zyyyyyxy{yz{zzzyywxyxxxxyyzzyyyzzzyyzxyyyyyxxyzzzzxyxxyyyzxyyyyyyzxxxxywyyzyyyyz{zyzxwyzyyzxyyzyyyxyxyyyxxyyyyyyyzyyyyywxyyyyyzzxyyyxxxyxyyyzyzxyyyxxyywyzyzzxyzy{yxyzywxyyzyyzzzyyyyyyyyyzyyyzzxyzyyxxxxyyyyyyyyyxxxyyyyyzyyzzzyyyyyyyyyyzyyyyzzxyyyyxyyxyzzyzyzyyzxyyzzyzyzyzyyyyyzyxyxzzzyzzyzyyyyyxyyyzzzyzzyyyyyzxxyzzzzzzzzyxyyzyyzzzzzzyzyzyyyyzzyyzzz{zzzyyzyzyzzzzzz{zz|yzyzzzyyzyzzzz{zzyyzyyzyz|zyzzzzzzzzyzzzzzyz{{{zyyzyyzzyz{{zz{{{yyzzyyzz{zz{z{{zz{yyzyzz{{{yz{z{yzyyzzzz{zzz{{z{yzzzzyxzyz{{zzz{zzzyzyyyzyz{yzzzzzzyyzzzzzzzzyyyxyyyyyyyyzzyyyyzyyyyzxzyzyxzzzyzzyyxyzyyyyyzzzzzzyyxyyxxyyyyyz{yyyxywzywyzzyzzzzyyyxyyxyyyyyyyzzyyxyyxyyyyzxyzyzyyzyyxxxyyyzzyyyyyxyyyyyyyyyyzyyzyyxyxyzy{zyzyzzyxyyyyyxyzyzyy{zyyxxyxxyyyzyzyyzxyxxxxwyzzzyyyyzzxyyyxzwyzzzzyyzzyyyyyyxzyyzzzz{zyzzyyzyzyzzyyz{yyzyyzyxyyzzzzzzzyyyyyxxyyy{z{zzyxyyyyyyzzyyzzzyyxyzzzyzzzzzzyzzzyyxzyyyyzzzzz{{yzxyzyzyz{z{yzz{zzyzzyyyzy{z{{zyzyxzzxzyzyz{zzzzzyzzyzzzzzyzzzz{zzyyzyxyz{{{{{zzzyyzzyyy{zyzz{{{{xzz{yxzy{zz{{{{zzzzzyzz{{yzzz{{yyzyyzyy{{zzy{{{zzyzyzzyyzy{yz{zzzyzyyyzzzzzzzyyxxxyywyxyzzzyyyyzyyyyxxxzzyzyzyzyyxyyxyyzzxzyzzzzxxyxxxxyyyyxxyzyyywxxyxzzyyyyyzyxyxyyzwxzyyyy{yyyyxxxxyyyywyzzyyzzyyyxyyxyyyyxyyxzyyxxyyzxyzzzyyxyyyxyxzyzzyyyzyyxxxxywxyyzyyzzyxyyyxyxyzyyyyyzzyyxxxxxyyxyyzzzyyyyyxyxyxyyzyyzyxzyyyxyyzzyyyyzyyxyyyzyyyzyyzyzyzyyyyxxyyyzzzzzzyyyyzyyyyzzzzyzyyyyyyxzzyzyyyzzyxyyyxxz{zzyzyzzzyyyyyyyzzzz{zzz{yzyyzzzzyy{z{z|zyxyyyyyz{zzzzzzzyyyzyxyz{zyzz{zzyyyyyzzz{zzzz{y{yyyyzzyz{{zyz{|{zzzzyyyzzzzzz{{zyzy|xzzz{zzzy{{yzzzyyzyyyzz{{z{zyzzyzzzzzzzz{zz{zzyzyyxzzyzzzzyzzzyyyzy{{zzzyyzyzyyyxywyyzyxyzzxyyyyxxxyyy{yzyyyyxyyxyxyyyzzzyyxxyyxxyyyyyyyyyyzyyxxxyyyyxzyyyyyyzxxyyyyyxyyyyzyxyyxyyyy{zyxyzyzxyxxxyxzxxyxzzyyxxxxxyxyyxzyzzyyzyyxyxyxzyyyzyyzyxyxyxxyzzzzyzyxyxyxyyxzzzzyyyyzyyxxyyyyzyyzzzyxxyyyzxxyzyyyyzyyzxxyxxwzyyyyzzyyxyxyzyyyyzyx{zzyyxxyyxyzyyyyyzzzxzyyxyxy{zzzzzz{xyyxyxxzzzzyyzyzzzyzxxyzzzyzzzzyyxyyzyyzz{zyzzzyyzy{zyz{zzzz{zzzyyyyxyzyzzz{yzyzxyzyzzy{z{{{zyzzzyyyyzz{{zz{zz{zyyyzyzzy{z{zy{zzzyzyzzz{zz{zz{{zzyy{yzyzzzzzz{{{yyzyyyyzzzz{zzzzzyyyzyyzzyyz{{z{yzzzyyyzzzzzz{yzzzyyyyzz{zyzzyyyyyxyzxxxyzyyzzyyyyxxyxyxyyzzyzyyzyxxxxyyzyzzyzzzyzyxyyyyyzyyzzzxzyyyyyxzyyzxz{{yxyxxyyyxxyyyzzyxyxxyyxy{yzyxyyyyyyyyxxyyyyyyyxzxxyxyxyxyyzyyyzyyyyxyxyyyz{xxyyzyyzyyyyyyyy{zyzyyxxyxyyxyyyyy{yyzyyxxzyxyzxyyzz{xyyyyyyxyzyzyyzyzyxyyyzyyyzyzyyzzyzxyyyzyyyyyyzzyyxyyyyzyzyyzzzzyyyyyxzxy{zyz{z{xy{xxyyyz{yzyzy{zxyyxyyzyz{yyzzzzyyyzyzzzyzzzz{zyyzzyyyyzzzzzzz{yzzyyyyxzzzzzzz{z{yyzzyyzz{zzz{zzzzyyxzzzzzzz{z{zzyzzzyzzzzz{zzzzyzzyyzzzz{{zzz{zzyyyzyzy{zzzz{{zzyzzzzzz{{{{zz{zz{yxzyzz{{zz{{zzz{yzyyyyzzzyz{zyzzzzyyyzyzz{xyzyyyyywxxxy{yzzzzxxyyxywxxzyzzzyzyyyyxyyxzyzxyzzzxxyyyyxxyzzyyyyzyyxxxxxxyyzzyzzzyyyxxyzyyyyyyzyzyzyyyxxxzxyzxzyyxxyxyxyyy{zyyyzyxyyyyxxxyyzyyyzyyxxxxyxyyzyzyyzyyxyxyxxxy{yzyyyyyyyxyyyyxyzyyyyzyyyyyyyxyzyyyyzzyxyyyyxxzzzxyyzzyyzxxxyzyzyyzyzzyzyxyxzyzyyzyzzzxzyxzyyyzzyyyzyzzyzyyyyyyzzyzzyy{xzyyyxyyzzyzzzyyyyyxyzzzyzzzyzz{yyyzyyzyz{zz{zyzyzz{yzzzzyzyzyzzzyyxyyy{zzzzzzy{yyyzzyz{zzz{z{zzyzyzzzyz{{zzzz{{zy{yzzzz{zzyzzzzzzzyzzz{zzz{zz{{yzzzyzz{zzzzzz{zzyzzzzy{zzzz{{zy{zyzyzyy{zyzz{zzzyyzzzyyzyz{zz{zzzyzzzzzxz{zyyyyyyxyxxyyyzyzzzyyxyyxyxyyzyyyzyzyyyyyyyxyyzyyyzyyyyxyyxyxzzzyyzyzyyyxzywyzyyxyyzyxyxxxxxyyyyyzzzyyzyxxxyyyzyyzzxxyxxyyxxyyyyyzzyxyxxxxyyyyzxyzyyyyyxyxxyyz{yyyzyyzyxxwyxxyyxyyzyyxxxyxzyyzyxyyyzxxyxxyyyxyyyxy{yzxyyxzxxxzyyzy{{yyyyyyyyzyzyyyyzyyzxyxyyzzzyyzyzyyyyyxyyzyzzyyzyyxyyyxyyyzzyyyzyyyzyyzxxzzyzyzzzzyzxyxyyz{zzzzzyzyyyzyyyyzz{{zz{yz{yyyyyz{yzyzzzyyyzyyzxy{zzzz{zyyyzzyzyz{yzzyzzyzzyyzzzzyzy{y{{zzz{yzyzy{z{yzz{|yyzzyyz{zz{zz{{{yyzyzyzzzz{zzz{zyzzzzyz{zzz{zz{yyzyyyyyz{zzzz{y{zyyzyyyzzy{{z{zyzzyyxyyzzzyyyyyyxxxxxywyyyyyzy{zxxxxxyxzyxyzyyyyyxyyyyyyzyyyzzzyzyyyxyxyyyzzyyyyxxxxyyxyxxxyyyzxyyyxxyxyyyyyzyyzyyyyxwxyyyzyyzxyxyxxxxyyyxzyyzzxxxwyyxwyyyxyy{yxyyyxxxyyzzyyxyyzxxxxxyxyyxyyyzyyxzxyzxxzyyyyzyyyxxyyxxxxyyyyzzzyyyyyyyxzyyyyy{zyyyxxyyyxyyyzyyyzyxyxyyxyzzyyzzzyyxyzyxwyy{yzzz{zxzyyxzyyzzzyzzyxyxyxyxzzzz{yy{yyzxzyzyyzzzzyyyyzzzzxyyyzzy{zzzzyyzyyyzyzyzzzz{zyyz{zyyxyzzy{zzz{yyxyyzy{{zz{z{{zyyyyy{z{zzzz{{z{zzyyzzz{{zzzz{{zyzzyyzzyzzy{z{{zzyzzyyzz{zzz{{zzyzzyzyyz{z{z{z{zzyyzyyzyz{zzz{{zzzyyz{yzzz{zz{zyzzyyzyy{yzzzyyyyxzyxyyzyzzyyyzyxyxyyxxyyxyyyzzyyxyywyyxyyyyyyzy{yxyyyyyxyyzxyyzxyyxxxxxyyyyyyzyxyyyxyyxxyyyyzzyxyyzzxxxyxyyyzyzxyyxyxyyyyyyzzyxyyxxzwyxyzzyxyyzxzyywxxxyxyyyyxyyx{yxxyxxyzzzyzzyxxyyxyxxxyxyzzzyyxxyxxyxyzyzyzzyyyyyyyxyzyyyzyyyyyxyxyyyyzyyzzzyyyyxxyyyyzzyzzzyyxyxyxzyzyzyzzzyyyxyxxxxzzzzzyzyzyyzyzxyzzzzyzyyyyzxyyyy{yzyzyzzzy{zyyyz{zyzzyzyyzzyzyyzzyzzz{zzzyyzyxzz{zz{{zzzzyzyyyz{zzzz{zzzyyyyzzyyzy{z{zzzyyyzzyyz{z{z{{zzz{zzyyy{zz|zzzz{yyyyyyz{yyzzz{{zzyyzyyzzzzzy{y{zyzyyyyyyzzzzzz{{zzyzzyxyzz{zzzzzyyyyyyyzz{zz